Probleme de copier/coller vers une autre feuille de classeur

Bonjour tout le monde, je suis tout nouveau sur ce forum et je rencontre quelques difficultés....

Pour faire simple je veux copier une plage qui peut varier selon mon envie. Je lui impose donc certaines conditions mais lorsque j'utilise cette formule :

Sheets("1").Range(Cells(Ligne + 1, Colonne), Cells(Ligne + 5, Colonne)).Copy Destination:=Sheets("2").Range("B3")

Ma macro fonctionne SEULEMENT QUAND JE SUIS SUR LA FEUILLE 1. Si je la lance depuis la feuille 2 j'ai ce message d'erreur qui s'affiche :

Run-time error '1004':

Application-defined or object-defined error

Et le plus étrange c'est quand je change juste la plage (c'est donc une plage fixe ici), la macro FONCTIONNE DE N'IMPORTE QU'ELLE FEUILLE :

Sheets("1").Range("A1:C4").Copy Destination:=Sheets("2").Range("B3")

Si jamais vous avez des idées pour me débloquer je suis preneur aha

MERCI D'AVANCE A VOUS !

Bonjour,

En ne joignant qu'une seule ligne de ta macro ... on peut se demander comment sont définies tes variables Ligne et Colonne ...?

Salut James !

En gros, je cherche a deplacer des infos d'une feuille vers une autre. Le but est de "détecter" la bonne colonne. Ici je cherche a detecter la colonne "description"

Je te mets une partie du programme :

Dim Ligne As Long

Dim Colonne As Long

Ligne = 1

Colonne = 1

While Sheets("1").Cells(1, Colonne) <> "Description"

Colonne = Colonne + 1

Wend

Sheets("1").Range(Cells(Ligne + 1, Colonne), Cells(Ligne + 29, Colonne)).Copy Destination:=Sheets("main").Range("A7")

Merci pour ta réponse

Bonjour,

Je ne connais pas ton degré de familiarité avec Excel ...

Mais pourquoi une boucle pour identifier ta Colonne ...?

Hey James !

Oui je sais je me complique un peu, du coup j'ai trouvé une autre solution ! De meme pour ma function qui fonctionne que sur une feuille et pas les autres. Pour cela j'utilise la fonctione "select" pour aller sur la bonne feuille et excuter ma fonction

Bonjour,

Deux petites remarques :

1. Ne pas hésiter à partager ta solution avec le Forum ... pour les futurs lecteurs

2. Select est très très souvent ... la plus mauvaise solution à utiliser ...

Hey James

Tu as raison je vais detailler un peu plus ma demarche.

Pour identifier ma colonne j'utilise la fonction qui me permet de compter le nombre de cellule :

nb_cellules = Application.WorksheetFunction.CountA(Sheets("Draft").Range("1:1"))

Et pour ce qui est de mon problem de depart : sachant que ma formule fonctionne seulement quand je suis sur la feuille en question j'utilise "Sheets("Main").Select" pour me diriger vers la feuille en question et donc pour executer ma fonction !

Est-ce clair pour toi ?

Merci pour les futurs lecteurs du Forum

Rechercher des sujets similaires à "probleme copier coller feuille classeur"