VBA Loop Until

Résolu
Bonjour,

J'ai un problème avec une macro: j'aimerais copier les lignes d'une feuille dans une autre jusqu'à ce qu'il n'y ait plus rien à copier (cellules vides), J'ai essayé de faire une macro du style 'loop until" mais ça ne marche pas!

Pouvez-vous me dire comment résoudre mon erreur de compilation?

Merci d'avance

Nota bene; je ne connais pas grande chose en VBA, soyez gentils svp!

Sub copier()
'
' copier Macro
' Macro enregistrée le 16/09/2008 par KMBSF
'
' Touche de raccourci du clavier: Ctrl+a
'
Do
Range("A:F").Select
Selection.Copy
Sheets("Releve").Select
Range("A1").Select
ActiveSheet.Paste
Sheets("Agios").Select
Loop Until IsEmpty(Range("A:F").Offset)
End Sub
Configuration: Windows XP
Internet Explorer 7.0

10 réponses

  1. Merci beaucoup!

    Bonne journée
    -1
    1. Sub copier()
      '
      ' copier Macro
      ' Macro enregistrée le 16/09/2008 par KMBSF
      '
      ' Touche de raccourci du clavier: Ctrl+a
      '

      While (Cells(A, 1).Value <> "")

      Cells(A, 1).entirerows.Select
      Selection.Copy

      Sheets("Releve").Select
      Cells(1, 1).Select
      ActiveSheet.Paste

      Sheets("Agios").Select
      A = A + 1

      End Sub

      effectivement, j'avais fait une erreur
      0
      1. En fait, quand j'utilise la macro, il y a une erreur 1004 et le débogueur m'indique en jaune cette partie:

        While (Cells(A, 1) <> "")
        -1
        1. Merci Leahkim

          Par contre, est-ce que je laisse ta macro et je rajoute "End sub" à la fin? ou faut-il rajouter une autre mention?

          voilà pour mon côté débutant en VBA :(

          Merci
          0
          1. no souci, voici ta macro !

            While (Cells(A, 1) <> "")

            Cells(A, 1).entirerows.Select
            Selection.Copy

            Sheets("Releve").Select
            Cells(1, 1).Select
            ActiveSheet.Paste

            Sheets("Agios").Select
            A = A + 1

            Wend
            -1
            1. Voici les colonnes:

              A B C D E F
              Date Référence Libellé Débit Crédit Echéance

              Les colonnes D et E ne sont pas remplies au même temps (s'il y a un débit, y a pas de crédit et vice-versa). Sinon pour le reste les cellules sont toujours renseignées.

              Je rajouterais que c'est pas grave si la macro copie-colle une cellule vide dans la nouvelle feuille, puisque mon but et simplement de transporter les cellules remplies telles quelles

              Merci à nouveau
              0
              1. oui, cette fois c'est clair.

                Je peux te rédiger une macro assez vite si les cases de chaques lignes entre A et F sont toujours pleine.

                Sinon, y a t il une des colonnes qui a toujours une valeur quelconque quand il faut copier la ligne
                0
                1. Rebonjour

                  Tu as raison, il faut peut être que je commence par dire ce que je veux faire, ça se trouve j'ai pas fait ce qu'il fallait...

                  Donc, je veux tout simplement copier les 'lignes' (comprises entre la colonne A et F) dans une autre feuille. Le problème étant que les nombre de lignes change à chaque fois d'où mon idée de faire un loop until pour que le copier-coller s'arrête au moment où il y a plus rien sur les lignes

                  J'espère avoir été clair

                  Merci d'avance
                  0
                  1. ta macro n'est pas claire du tout... Pour moi, elle copie toujours la meme chose. Quelles sont les cellules que tu veux copier ?
                    -1