Problème répétition boucle
oliwood
-
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour, ou bonsoir c'est selon :)
voilà je débute en VBA et j'ai réussi à bidouiller une macro pour effectuer une recherche dans une plage et renvoyer les valeurs trouvées, mais la boucle ne marche pas je voudrais que le deuxième résultat se mette dans la cellule en dessous et ainsi de suite.
voici le code
si qqun de plus expérimenté pouvait me dire ou est mon erreur ce serait sympa ;)
Bonne soirée
voilà je débute en VBA et j'ai réussi à bidouiller une macro pour effectuer une recherche dans une plage et renvoyer les valeurs trouvées, mais la boucle ne marche pas je voudrais que le deuxième résultat se mette dans la cellule en dessous et ainsi de suite.
voici le code
Sub TrouverVoisin2()
Dim Cellule As Range
Dim cat As String
cat = "MUS"
With ActiveSheet.Range("G3:G47")
Set Cellule = .Find(cat, Lookat:=xlWhole)
If Not Cellule Is Nothing Then
firstAddress = Cellule.Address
Do
Range("T4").Value = Cellule.Offset(0, -3).Value & Cellule.Offset(0, -2)
Range("U4").Value = Cellule.Offset(0, -2).Value
Exit Sub
Set Cellule = .FindNext(Cellule)
Range("T5").Value = Cellule.Offset(0, -3).Value & Cellule.Offset(0, -2)
Range("U5").Value = Cellule.Offset(0, -2).Value
Loop While Not Cellule Is Nothing And Cellule.Address <> firstAddress
End If
End With
MsgBox "Rien trouvé"
End Sub
si qqun de plus expérimenté pouvait me dire ou est mon erreur ce serait sympa ;)
Bonne soirée
A voir également:
- Problème répétition boucle
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Boucle excel sans macro - Forum Excel
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
- Mise à disposition de boucle locale dédiée ✓ - Forum Freebox
- Vlc lire en boucle ✓ - Forum Lecteurs et supports vidéo
5 réponses
Bonjour,
Si vous n'avez que deux infos a recuperer:
Si vous n'avez que deux infos a recuperer:
Sub TrouverVoisin2()
Dim Cellule As Range
Dim cat As String
cat = "MUS"
With ActiveSheet.Range("G3:G47")
Set Cellule = .Find(cat, Lookat:=xlWhole)
If Not Cellule Is Nothing Then
firstAddress = Cellule.Address
Do
Range("T4").Value = Cellule.Offset(0, -3).Value & Cellule.Offset(0, -2)
Range("U4").Value = Cellule.Offset(0, -2).Value
Set Cellule = .FindNext(Cellule)
Range("T5").Value = Cellule.Offset(0, -3).Value & Cellule.Offset(0, -2)
Range("U5").Value = Cellule.Offset(0, -2).Value
Exit Sub
Loop While Not Cellule Is Nothing And Cellule.Address <> firstAddress
End If
End With
MsgBox "Rien trouvé"
End Sub
Bonjour tous les 2
essaies:
Michel
essaies:
Option Explicit
Sub ccm()
Dim Cat As String, Nbre As Byte, LIg As Byte, Cptr As Byte, Yyy As Byte
Application.ScreenUpdating = False
Cat = "MUS"
Nbre = Application.CountIf(Range("G3:G47"), Cat)
If Nbre > 0 Then
LIg = 42
Yyy = 4
For Cptr = 1 To Nbre
LIg = Columns("G").Find(Cat, Cells(LIg, "G"), xlValues).Row
Cells(Yyy, "T") = Cells(Yyy, "Q") & " " & Cells(Yyy, "R")
Cells(Yyy, "U") = Cells(Yyy, "S")
Yyy = Yyy + 1
Next
Else
msgbox "rien trouvé"
End If
End Sub
Michel
Bonjour michel_m
Avant de lui sortir a peu pres le meme code que vous, vu qu'il a fait l'effort de chercher dans l'aide excel ( ail suppose, docteur), je lui ai simplement corriger la position de sortie du fait qu'il n'y a que deux infos a priori. Comme cela petite satisfaction personnelle pour lui.
Avant de lui sortir a peu pres le meme code que vous, vu qu'il a fait l'effort de chercher dans l'aide excel ( ail suppose, docteur), je lui ai simplement corriger la position de sortie du fait qu'il n'y a que deux infos a priori. Comme cela petite satisfaction personnelle pour lui.
Merci de vous penchez sur mon cas mais la première solution proposée a visiblement le même problème que moi , elle ne renvoie que la première réponse trouvée pas les autres.
Et la deuxième me met des X dans les cases lol
je comprends de moins en moins mdr
Et la deuxième me met des X dans les cases lol
je comprends de moins en moins mdr
Bonjour,
elle ne renvoie que la première réponse trouvée pas les autres.
Dites voir c'est la deuxieme ou toutes les autres qu'il faut trouver????????????????????
Le code de michel_m marche tres bien, au colonnes pres (offset negatif)!!!!!
Le mien aussi, a condition de n'avoir que deux infos!!!!!!
elle ne renvoie que la première réponse trouvée pas les autres.
Dites voir c'est la deuxieme ou toutes les autres qu'il faut trouver????????????????????
Le code de michel_m marche tres bien, au colonnes pres (offset negatif)!!!!!
Le mien aussi, a condition de n'avoir que deux infos!!!!!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question