Changer de cellule si celle ci est pleine

cycy -  
Bidouilleu_R Messages postés 1209 Statut Membre -
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
Configuration: Windows Vista
Firefox 3.0.15

2 réponses

  1. Bidouilleu_R Messages postés 1209 Statut Membre 296
     
    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
    1. cycy
       
      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
  2. Bidouilleu_R Messages postés 1209 Statut Membre 296
     
    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