Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro recherche

  • Initiateur de la discussion Initiateur de la discussion CHEPAS65
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

CHEPAS65

Guest
Bonjour à tous,

J'ai plusieurs classeurs dont je souhaite extraire certaines informations et les compiler dans un tableau de résultats. La question que j'ai, est comment faire pour que dans le cas ou la macro recherche ne trouve rien dans un classeur, elle laisse la cellule correspondante vide et passe directement à la ligne suivante avec le classeur suivant.

Merci.

PS. La macro et le tableau de résultat sont dans le classeur 2.
 

Pièces jointes

Re : Macro recherche

Bonjour,
A tester
Code:
Sub TEST1()
Dim i&, j&, x&, y&, cl&, dest As Worksheet, wb As Workbook
j = 10
Set dest = Workbooks("CAISSE2.xls").Sheets("Résultat")
For cl = 2 To 4
    On Error Resume Next
    Set wb = Workbooks("CAISSE" & cl & ".xls")
    If Err = 0 Then
        With wb.Sheets(1)
            For i = 2 To .Range("F65536").End(xlUp).Row
                If .Range("F" & i) Like "Visa*" Then
                    dest.Range("A" & j + x) = .Range("L" & i)
                    x = x + 1
                ElseIf .Range("F" & i) Like "Virement*" Then
                    dest.Range("B" & j + y) = .Range("L" & i)
                    y = y + 1
                End If
            Next
            If x > y Then j = j + x Else: j = j + y
            x = 0
            y = 0
        End With
    End If
Next
End Sub
A+
kjin
 
Re : Macro recherche

Wawoo, elle marche trop bien ta macro Kjin. Merci beaucoup. Le seul problème est que, quand je rajoute des classeurs en plus, les résultats à partir du classeur 5 ne sont plus copiés à la suite des autres mais sautent une ligne.
 
Dernière modification par un modérateur:
Re : Macro recherche

Bonsoir,
Wawoo, elle marche trop bien ta macro Kjin. Merci beaucoup. Tu peux juste m'expliquer ce que veux dire cette ligne? If x > y Then j = j + x Else: j = j + y
x = 0
y = 0
[x] est l'incrément pour la colonne A, [y] celui de la colonne B
Il faut les tester à chaque boucle pour savoir lequel on ajoute à l'incrément [j] puis les réinitialiser
A+
kjin
 
Re : Macro recherche

Bonsoir Kjin,

Le seul problème est que, quand je rajoute des classeurs en plus, les résultats à partir du classeur 5 ne sont plus copiés à la suite des autres mais sautent une ligne.
 
Re : Macro recherche

Bonsoir,

Voici les classeurs en +
 

Pièces jointes

Re : Macro recherche

Bonsoir,
Tu as sans doute des cellules vides dans les colonnes montants
Code:
Sub TESTLUNDI()
Dim i&, j&, x&, y&, cl&, dest As Worksheet, wb As Workbook
j = 10
With Workbooks("CAISSE2.xls")
    Set dest = .Sheets("Résultat")
    dest.Cells.Clear
End With
For cl = 2 To 6
    On Error Resume Next
    Set wb = Workbooks("CAISSE" & cl & ".xls")
    If Err = 0 Then
        With wb.Sheets(1)
            For i = 2 To .Range("F65536").End(xlUp).Row
                If .Range("F" & i) Like "Visa*" And .Range("L" & i) <> 0 Then
                    dest.Range("A" & j + x) = .Range("L" & i)
                    x = x + 1
                ElseIf .Range("F" & i) Like "Virement*" And .Range("L" & i) <> 0 Then
                    dest.Range("B" & j + y) = .Range("L" & i)
                    y = y
                End If
            Next
            If x > y Then j = j + x Else: j = j + y
            x = 0
            y = 0
        End With
    End If
Next
End Sub
A+
kjin
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
6
Affichages
114
  • Question Question
Microsoft 365 Remplissage auto
Réponses
14
Affichages
381
Réponses
4
Affichages
482
  • Question Question
Microsoft 365 problème d'index
Réponses
19
Affichages
498
Réponses
3
Affichages
258
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…