J'ai réussi au niveau d'un tableau qui comprend
une colonne client et d'autre colonnes
a faire une requete.
c'est a dire dans la colonne clients je peux avoir plusieurs fois le meme nom
donc j'ai fait un bouton de commande qui me restitue sur une autre feuille
suivant le nom choisi les valeurs lui correspondant
en appuyant sur ce bouton de commande, je choisi un nom ex dupont
mais sur l'onglet qui s'ouvre j'ai seulement une seul ligne avec ce nom
alors que sur le tableau initial j'ai plusieurs dupond
comment affiner mon code
pour selectionner tout les dupond par exemple
merci beaucoup pour ton code il a l'air de marcher ok
"JpPradier" wrote:
Voici ton code adapté pour le findnext.
j-p
Sub tape_et_lit()
With Sheets("1c").Range("a:a") nom = "dupont" ' InputBox("Tapez le nom recherché :", "Recherche") If nom = "" Then MsgBox "Vous n'avez rien tapé": Exit Sub Set c = .Find(nom, LookIn:=xlValues) If (c Is Nothing) Then MsgBox nom & " n'a pas été trouvé": Exit Sub Else cpt = 0 firstAddress = c.Address Do Sheets("3c2").Range("A2").Offset(cpt) = c.Offset(0, 0).Value Sheets("3c2").Range("B2").Offset(cpt) = c.Offset(0, 1).Value Sheets("3c2").Range("C2").Offset(cpt) = c.Offset(0, 5).Value Sheets("3c2").Range("D2").Offset(cpt) = c.Offset(0, 6).Value Sheets("3c2").Range("E2").Offset(cpt) = c.Offset(0, 7).Value cpt = cpt + 1 Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress Application.EnableEvents = False Sheets("3c2").Activate Application.EnableEvents = True
End If End With
End Sub
merci beaucoup
pour ton code il a l'air de marcher
ok
"JpPradier" wrote:
Voici ton code adapté pour le findnext.
j-p
Sub tape_et_lit()
With Sheets("1c").Range("a:a")
nom = "dupont" ' InputBox("Tapez le nom recherché :", "Recherche")
If nom = "" Then MsgBox "Vous n'avez rien tapé": Exit Sub
Set c = .Find(nom, LookIn:=xlValues)
If (c Is Nothing) Then
MsgBox nom & " n'a pas été trouvé": Exit Sub
Else
cpt = 0
firstAddress = c.Address
Do
Sheets("3c2").Range("A2").Offset(cpt) = c.Offset(0, 0).Value
Sheets("3c2").Range("B2").Offset(cpt) = c.Offset(0, 1).Value
Sheets("3c2").Range("C2").Offset(cpt) = c.Offset(0, 5).Value
Sheets("3c2").Range("D2").Offset(cpt) = c.Offset(0, 6).Value
Sheets("3c2").Range("E2").Offset(cpt) = c.Offset(0, 7).Value
cpt = cpt + 1
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
Application.EnableEvents = False
Sheets("3c2").Activate
Application.EnableEvents = True
merci beaucoup pour ton code il a l'air de marcher ok
"JpPradier" wrote:
Voici ton code adapté pour le findnext.
j-p
Sub tape_et_lit()
With Sheets("1c").Range("a:a") nom = "dupont" ' InputBox("Tapez le nom recherché :", "Recherche") If nom = "" Then MsgBox "Vous n'avez rien tapé": Exit Sub Set c = .Find(nom, LookIn:=xlValues) If (c Is Nothing) Then MsgBox nom & " n'a pas été trouvé": Exit Sub Else cpt = 0 firstAddress = c.Address Do Sheets("3c2").Range("A2").Offset(cpt) = c.Offset(0, 0).Value Sheets("3c2").Range("B2").Offset(cpt) = c.Offset(0, 1).Value Sheets("3c2").Range("C2").Offset(cpt) = c.Offset(0, 5).Value Sheets("3c2").Range("D2").Offset(cpt) = c.Offset(0, 6).Value Sheets("3c2").Range("E2").Offset(cpt) = c.Offset(0, 7).Value cpt = cpt + 1 Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress Application.EnableEvents = False Sheets("3c2").Activate Application.EnableEvents = True
End If End With
End Sub
sabatier
mon pauvre hali tu n'as décidément rien compris au film.... peux-tu me faire le plaisir de relire ta réponse ci-dessous? ton "il a l'air de marcher" va aller doit au coeur de JpPradier, ne penses-tu pas? vous excuserez, j'espère, un ton qui ne m'est pas (trop) familier mais, vraiment, hali, ou bien tu as un petit pois dans le cigare ou tu joues au con et là, j'avoue que tu as du talent... jps
"hali" a écrit dans le message de news:
merci beaucoup pour ton code il a l'air de marcher ok
"JpPradier" wrote:
Voici ton code adapté pour le findnext.
j-p
Sub tape_et_lit()
With Sheets("1c").Range("a:a") nom = "dupont" ' InputBox("Tapez le nom recherché :", "Recherche") If nom = "" Then MsgBox "Vous n'avez rien tapé": Exit Sub Set c = .Find(nom, LookIn:=xlValues) If (c Is Nothing) Then MsgBox nom & " n'a pas été trouvé": Exit Sub Else cpt = 0 firstAddress = c.Address Do Sheets("3c2").Range("A2").Offset(cpt) = c.Offset(0, 0).Value Sheets("3c2").Range("B2").Offset(cpt) = c.Offset(0, 1).Value Sheets("3c2").Range("C2").Offset(cpt) = c.Offset(0, 5).Value Sheets("3c2").Range("D2").Offset(cpt) = c.Offset(0, 6).Value Sheets("3c2").Range("E2").Offset(cpt) = c.Offset(0, 7).Value cpt = cpt + 1 Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress Application.EnableEvents = False Sheets("3c2").Activate Application.EnableEvents = True
End If End With
End Sub
mon pauvre hali
tu n'as décidément rien compris au film....
peux-tu me faire le plaisir de relire ta réponse ci-dessous?
ton "il a l'air de marcher" va aller doit au coeur de JpPradier, ne
penses-tu pas?
vous excuserez, j'espère, un ton qui ne m'est pas (trop) familier mais,
vraiment, hali, ou bien tu as un petit pois dans le cigare ou tu joues au
con et là, j'avoue que tu as du talent...
jps
"hali" <hali@discussions.microsoft.com> a écrit dans le message de
news:89C2C409-1704-46DA-997F-1EC02D688EB4@microsoft.com...
merci beaucoup
pour ton code il a l'air de marcher
ok
"JpPradier" wrote:
Voici ton code adapté pour le findnext.
j-p
Sub tape_et_lit()
With Sheets("1c").Range("a:a")
nom = "dupont" ' InputBox("Tapez le nom recherché :", "Recherche")
If nom = "" Then MsgBox "Vous n'avez rien tapé": Exit Sub
Set c = .Find(nom, LookIn:=xlValues)
If (c Is Nothing) Then
MsgBox nom & " n'a pas été trouvé": Exit Sub
Else
cpt = 0
firstAddress = c.Address
Do
Sheets("3c2").Range("A2").Offset(cpt) = c.Offset(0, 0).Value
Sheets("3c2").Range("B2").Offset(cpt) = c.Offset(0, 1).Value
Sheets("3c2").Range("C2").Offset(cpt) = c.Offset(0, 5).Value
Sheets("3c2").Range("D2").Offset(cpt) = c.Offset(0, 6).Value
Sheets("3c2").Range("E2").Offset(cpt) = c.Offset(0, 7).Value
cpt = cpt + 1
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
Application.EnableEvents = False
Sheets("3c2").Activate
Application.EnableEvents = True
mon pauvre hali tu n'as décidément rien compris au film.... peux-tu me faire le plaisir de relire ta réponse ci-dessous? ton "il a l'air de marcher" va aller doit au coeur de JpPradier, ne penses-tu pas? vous excuserez, j'espère, un ton qui ne m'est pas (trop) familier mais, vraiment, hali, ou bien tu as un petit pois dans le cigare ou tu joues au con et là, j'avoue que tu as du talent... jps
"hali" a écrit dans le message de news:
merci beaucoup pour ton code il a l'air de marcher ok
"JpPradier" wrote:
Voici ton code adapté pour le findnext.
j-p
Sub tape_et_lit()
With Sheets("1c").Range("a:a") nom = "dupont" ' InputBox("Tapez le nom recherché :", "Recherche") If nom = "" Then MsgBox "Vous n'avez rien tapé": Exit Sub Set c = .Find(nom, LookIn:=xlValues) If (c Is Nothing) Then MsgBox nom & " n'a pas été trouvé": Exit Sub Else cpt = 0 firstAddress = c.Address Do Sheets("3c2").Range("A2").Offset(cpt) = c.Offset(0, 0).Value Sheets("3c2").Range("B2").Offset(cpt) = c.Offset(0, 1).Value Sheets("3c2").Range("C2").Offset(cpt) = c.Offset(0, 5).Value Sheets("3c2").Range("D2").Offset(cpt) = c.Offset(0, 6).Value Sheets("3c2").Range("E2").Offset(cpt) = c.Offset(0, 7).Value cpt = cpt + 1 Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress Application.EnableEvents = False Sheets("3c2").Activate Application.EnableEvents = True