Recopie automatiquement sous excel - VB
Résolu/Fermé
A voir également:
- Recopie automatiquement sous excel - VB
- Liste déroulante excel - Guide
- Si et excel - Guide
- Vb cable - Télécharger - Audio & Musique
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
4 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 5/07/2011 à 16:30
Modifié par michel_m le 5/07/2011 à 16:30
Bonjour
autre manière que l'ami Pijaku (re)
la macro se déclenche dès que tu valides un numéro dans la colonne A feuil2
pour installer:
faire un copier de la macro ci dessus
clic droit sur le nom d'onglet feuil2
-visualiser le code
coller
Michel
autre manière que l'ami Pijaku (re)
la macro se déclenche dès que tu valides un numéro dans la colonne A feuil2
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Columns("A")) Is Nothing Then lig2 = Target.Row With Sheets(1) lig1 = .Cells.Rows.Count On Error GoTo erreur lig1 = .Columns("A").Find(Target.Value, .Cells(lig1, "A"), xlValues).Row Range(Cells(lig2, "B"), Cells(lig2, "C")) = .Range(.Cells(lig1, "E"), .Cells(lig1, "F")).Value End With End If Exit Sub erreur: MsgBox " le numéro " & Target & " est inconnu dans la liste des dossiers", vbCritical End Sub
pour installer:
faire un copier de la macro ci dessus
clic droit sur le nom d'onglet feuil2
-visualiser le code
coller
Michel
Christof422
Messages postés
871
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
212
5 juil. 2011 à 15:56
5 juil. 2011 à 15:56
Il faut faire une boucle pour trouver a quelle ligne correspond ton numero de dossier. (boucle for). une fois qu tu a trouver le numero tu arrete la boucle (exit for).
Et tu selectionne les colonne qui 'interesse (b + nombre,c +nombre,e +nombre,f + nombre) (nombre corespondant a la colonne ou se trouve ton numero de dossier).
Ensuite tu copie la selection
Puis tu colle la selection sur ta feuille 2.
Si tu ne comprend pas un tru je pourrai t'aider un peu plus.
Et tu selectionne les colonne qui 'interesse (b + nombre,c +nombre,e +nombre,f + nombre) (nombre corespondant a la colonne ou se trouve ton numero de dossier).
Ensuite tu copie la selection
Puis tu colle la selection sur ta feuille 2.
Si tu ne comprend pas un tru je pourrai t'aider un peu plus.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 751
5 juil. 2011 à 16:12
5 juil. 2011 à 16:12
Bonjour,
Pourquoi faire une boucle pour rechercher une valeur? La méthode find semble toute indiquée...
Exemple :
Si vous souhaitez de plus amples explications, n'hésitez pas...
Pourquoi faire une boucle pour rechercher une valeur? La méthode find semble toute indiquée...
Exemple :
Sub cherche() Dim Trouve As Range Dim Valeur_cherchee, Valeur_trouvee As String With Sheets("Feuil2") Valeur_cherchee = .Cells(1, 1) End With With Sheets("Feuil1") Set Trouve = .Columns(1).Cells.Find(what:=Valeur_cherchee) If Trouve Is Nothing Then MsgBox "Pas trouvé" Else Valeur_trouvee = Trouve.Offset(0, 1).Value End If End With With Sheets("Feuil2") .Cells(1, 2) = Valeur_trouvee End With Set Trouve = Nothing End Sub
Si vous souhaitez de plus amples explications, n'hésitez pas...
Christof422
Messages postés
871
Date d'inscription
mardi 24 mai 2011
Statut
Membre
Dernière intervention
8 février 2015
212
5 juil. 2011 à 16:21
5 juil. 2011 à 16:21
oui, j'y avais pensé. mais bon je suis tres loin d'etre un pro du vba^^.
Donc je prefere donné une solution simple qui marcherai, mais bon qui ne sera pas forcement optimale.
Donc je prefere donné une solution simple qui marcherai, mais bon qui ne sera pas forcement optimale.