FORUM Tom's Hardware » Programmation » VB / VBA / VBS » copy de cellule macro
 

copy de cellule macro

Il y a 434 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : copy de cellule macro
 
Plus d'informations

Je suis sur une macro et j'ai un truc bizarre pour copier une cellule.
Si je mets :
Range(Cells(l, 13), Cells(l, 13)).Copy _
Destination:=Sheets("open" ).range("n20" )

pas de problème
mais avec :
Range(Cells(l, 13), Cells(l, 13)).Copy _
Destination:=Sheets("open" ).Cells(20, 10)

rien n'est copié !
Comme je veux remplacer la ligne "20" de destination par une variable, vous comprendrez que la 1ere formule me pose problème.

Des idées ?

zeb
Profil : Modérateur libre
Plus d'informations

Gné :ouch:
Vérifie bien que tu es dans le bon onglet dans tu exécutes ta macro. En effet, tu ne précises pas la feuille "Source" :

Code :
  1. Sheets("Source" ).Range(Sheets("Source" ).Cells(l, 13), Sheets("Source" ).Cells(l, 13)).Copy Destination:=Sheets("open" ).Cells(20, 10)


En + mieux

Code :
  1. Sheets("Source" ).Cells(l, 13).Copy Destination:=Sheets("open" ).Cells(20, 10)
 

-------------------------------------

 

Soluce de contournement :

Code :
  1. Dim variable As Integer
  2. variable = 20
  3. Cells(l, 13).Copy Destination:=Sheets("open" ).range("n" & variable)
 

-------------------------------------

 

Et merci de prendre la peine de présenter ton code proprement. C'est dans le règlement, pourtant :o


Message édité par zeb le 09-08-2007 à 13:35:29

---------------
Règlement du forum / Règlement de Programmation / Règlement du Monde de Linux euh, n'y en a pas...
Plus d'informations

Désolé pour la présentation ... je suis nouveau sur le forum ... j'avoue j'ai pas tout lu :o

J'ai essayé tes propositions.

Code :
  1. Sheets("temp" ).Cells(l, 13).Copy Destination:=Sheets("open" ).cells(20,10)


ne fonctionne pas bizarement. Comme avant, il ne fait rien. mais pas d'erreur non plus

Par contre :

Code :
  1. l = 341
  2. max_open = 20
  3. Sheets("temp" ).Cells(l, 13).Copy Destination:=Sheets("open" ).Range("n" & max_open)


Fonctionne

Le problème dans la deuxième syntaxe est si je veux faire aussi varier "n" car il me faudrait faire la correspondance entre numéro de colonne et lettre .... :(

Merci pour ton aide

zeb
Profil : Modérateur libre
Plus d'informations

J'ai une question bête : Quelle est la quatorzième lettre de l'alphabet ?


---------------
Règlement du forum / Règlement de Programmation / Règlement du Monde de Linux euh, n'y en a pas...

Aller à :
Ajouter une réponse
  FORUM Tom's Hardware » Programmation » VB / VBA / VBS » copy de cellule macro
 

Annonces Google
Publicité