Test de lecture avec boucle
naftallyne
-
Papou93 Messages postés 146 Date d'inscription Statut Membre Dernière intervention -
Papou93 Messages postés 146 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je suis a la recherche d'une macro qui fait une boucle
j'ai 2 feuilles ecsle dans le meme classeur
dans la premiere j'ai un tableau et dans la deuxeme j'ai le meme tableau
il faut que je lise dans la premiere feuille la premiere ligne et je regarde dans la deuxieme si j'ai la meme avec 3 criteres si je l'ai alors je passe a la seconde ligne dans la premiere page si je ne l'ai pas alors je li les autres lignes dans la seconde si je ne la trouve pas alors je la colle dans la seconde feuille ainssi de suite jusqu'a la derniere ligne de la premiere page
Sheets("feuille1").Select
ColonneActuel = 1
LigneActuel = 4
FinTableau = 500
Sheets("feuille2").Select
ColonneActuel2 = 1
LigneActuel2 = 4
FinTableau2 = 500
Do While LigneActuel2 > FinTableau2
Sheets("Project2").Select
If (C1F2 = C1F1 And C2F= C2F And C3F2 = C3F1) Then
LigneActuel2 = LigneActuel2 + 1
Else
LigneActuel = LigneActuel + 1
End If
Sheets("feuille2").Select
selection.copy
Sheets("feuille2").Select
selection.paste
Loop
je suis a la recherche d'une macro qui fait une boucle
j'ai 2 feuilles ecsle dans le meme classeur
dans la premiere j'ai un tableau et dans la deuxeme j'ai le meme tableau
il faut que je lise dans la premiere feuille la premiere ligne et je regarde dans la deuxieme si j'ai la meme avec 3 criteres si je l'ai alors je passe a la seconde ligne dans la premiere page si je ne l'ai pas alors je li les autres lignes dans la seconde si je ne la trouve pas alors je la colle dans la seconde feuille ainssi de suite jusqu'a la derniere ligne de la premiere page
Sheets("feuille1").Select
ColonneActuel = 1
LigneActuel = 4
FinTableau = 500
Sheets("feuille2").Select
ColonneActuel2 = 1
LigneActuel2 = 4
FinTableau2 = 500
Do While LigneActuel2 > FinTableau2
Sheets("Project2").Select
If (C1F2 = C1F1 And C2F= C2F And C3F2 = C3F1) Then
LigneActuel2 = LigneActuel2 + 1
Else
LigneActuel = LigneActuel + 1
End If
Sheets("feuille2").Select
selection.copy
Sheets("feuille2").Select
selection.paste
Loop
Configuration: Windows XP Internet Explorer 6.0
1 réponse
-
Bonjour naftallyne,
Voici un exemple de code à adapter à ton cas.Private Sub CommandButton1_Click() With Sheets(1) derligne1 = .Range("A65536").End(xlUp).Row For ligne = 1 To derligne1 egal = 0 For colonne = 1 To 3 If Sheets(2).Cells(ligne, colonne) = .Cells(ligne, colonne) Then egal = egal + 1 Next If egal < 3 Then derligne2 = Sheets(2).Range("A65536").End(xlUp).Row + 1 For c = 1 To 3 Sheets(2).Cells(derligne2, c) = Sheets(1).Cells(ligne, c) Next End If Next End With End Sub
Ces instructions sont à insérer dans l'événement 'Click' du bouton 'Commandbutton1' placé sur la feuille 'Feuil1'. Mais tu peux bien sûr mettre ces lignes dans une macro, dans un module, et la lancer d'une autre façon.
Espérant avoir pu t'aider.
Cordialement.