Changer de cellule si celle ci est pleine

Fermé
cycy - 26 nov. 2009 à 17:59
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 - 27 nov. 2009 à 10:59
Bonjour tout le monde ,

voila mon problème je voudrais faire un macro pour que si je clique sur une image sa me colle mon code article dans une cellule (c23) mais si il y a déjà un quelque chose dans cette cellule il colle le code ds celle en dessous et ainsi de suite

voici mon macro enregistrer si quelqu'un peut m'aider

Sub article1()
'
' article1 Macro
' Macro enregistrée le 26/11/2009 par cyril
'

'
Windows("fichier deco.xls").Activate
Sheets("articles").Select
Range("A3").Select
Selection.Copy
Sheets("Devis").Select
Range("C23").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("C24").Select
Windows("la chambre.xls").Activate

End Sub

merci d'avance

2 réponses

Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 289
27 nov. 2009 à 10:00
pour t'aider dans ce que tu cherches....
mais note qu'il te faudra autant de macro que d'images sinon
tu auras toujours le même code article...



Sub article1()
'
' article1 Macro
' Macro enregistrée le 26/11/2009 par cyril
'

'

Windows("fichier deco.xls").Activate
Sheets("articles").Select
Range("A3").Select
Selection.Copy
Sheets("Devis").Select
Sheets("Devis").Range("C65535").End(xlUp).Offset(1, 0).Select' remplace Range("C23").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("C24").Select
Windows("la chambre.xls").Activate

End Sub
0
Salut

c'est nikel et j'ai une autre petite question
Sub article1()
'
' article1 Macro
' Macro enregistrée le 26/11/2009 par cyril
'

'

Windows("fichier deco.xls").Activate
Sheets("articles").Select
Range("A3").Select
Selection.Copy
Sheets("Devis").Select
Sheets("Devis").Range("C67").End(xlUp).Offset(1, 0).Select' remplace Range("C23").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("C24").Select
Windows("la chambre.xls").Activate

End Sub
cette ligne j'ai mis 67 car ma feuille devis a 67 ligne pour écrire les données
mais si je n'ai pas assez de ligne j'ai une deuxièmes feuille qui vien a la suite
et la case c commence a 109
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 289
27 nov. 2009 à 10:59
Sheets("Devis").Range("C67").End(xlUp).Offset(1, 0).Select

dans cette ligne on recherche vers le haut la première cellule pleine, puis avec .offset (1,0) on avance de 1 ligne et 0 colonne et enfin on sélectionne la cellule trouvée.

tu peux mettre range ("C5000") si tu veux j'ai écris range("C65535") car c'est la dernière cellule sous 2003
mais c'est toi qui décide.
A + Cathy
0