Langage VBA pour sélectionner des données

Fermé
ELG - 5 août 2011 à 08:24
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 5 août 2011 à 09:16
Bonjour,

Je travaille sur un tableau de commission d'agents, alimenté par une macro extraite d'un fichier Excel de facturation. Je voudrais inclure les réglements effectués sur ces factures via un autre fichier Excel. Je ne trouve pas la formule pour sélectionner sur ce fichier règlements les lignes corresondantes aux factures du fichier facturation pour les inclure sur les lignes du tableau Commission agents, en bonne et due place.
Merci de votre aide.

1 réponse

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
Modifié par pijaku le 5/08/2011 à 09:16
Bonjour,
Même s'il est possible de lire et écrire dans un classeur fermé, je te recommande de travailler les deux classeurs Excel ouverts.
La procédure n'est pas très complexe :
1- je mets la valeur que je cherche (dans l'exemple ce sera Classeur1Feuil1A1) dans une variable,
2- dans le classeur2 je cherche cette valeur.
3- si je la trouve je fais ceci sinon cela.
Pour cela, tu peux utiliser la méthode .find comme ceci :
Sub cherche() 
Dim Trouve As Range 
Dim Valeur_cherchee As String 
Valeur_cherchee = Workbook("Classeur1").Sheets("Feuil1").Range("A1").Value 
With Workbook("Classeur2").Sheets("Feuil1") 
    Set Trouve = .Columns(1).Cells.Find(what:=Valeur_cherchee) 'va chercher dans la colonne 1 
        If Trouve Is Nothing Then 
            MsgBox "Pas trouvé" 
        Else 
            MsgBox "Trouvé à l'adresse : " & Trouve.Address 
        End If
End With
Set Trouve = Nothing 
End Sub

Cordialement,
Franck P
0