Recherche valeur en VBA

Bonjour à tous et Bonne année 2023

J'ai créé une macro pour rechercher une valeur dans une colonne, mais comment faire pour que cette recherche soit faite UNIQUEMENT dans

une colonne spécifique (F).

la macro est la suivante :

Sub Rech_Imputation()

' Macro recherche Imputation
'
Nom = InputBox("Entrez l'Imputation recherché", "Nom Prestataire")
If Nom = "" Then Exit Sub
Range("F8").Select
Set c = Cells.Find(Nom, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Select
rep = MsgBox("Recherche du suivant", vbOKCancel, "Recherche nouvelle occurence")
If rep = vbCancel Then Exit Sub
Set c = Cells.FindNext(c)
If c Is Nothing Then
Adresse_encours = 0
Else
Adresse_encours = c.Address
End If
Loop While Not (c Is Nothing) And (Adresse_encours <> firstAddress)
End If
'Range("F8").Select
Application.Run "Vide"
MsgBox "Cette Imputation n'existe pas ou aucune nouvelle occurrence !!", vbCritical, "Message d'erreur"
End Sub

Merci pour votre réponse

Gégé44

Bonjour Gégé44, le forum,

Peut-être ainsi:

Set c = Sheets("Ta_Feuille").Columns("F").Find(Nom, LookIn:=xlValues)

On pourrait restreindre la recherche aux données utiles...

Set plage = Sheets("Ta_Feuille").Range("F2:F" & Sheets("Ta_Feuille").Range("F" & Rows.Count).End(xlUp).Row)
    Set c = plage.Find(Nom, LookIn:=xlValues)

Cordialement,

Merci pour ta proposition. Mais cela ne fonctionne pas bien. la recherche change de colonne car la valeur recherchée est éventuellement dans d'autres colonnes

Gégé44

Re,

Merci pour le retour,

J'ai créé une macro pour rechercher une valeur dans une colonne, mais comment faire pour que cette recherche soit faite UNIQUEMENT dans

une colonne spécifique (F).

la recherche change de colonne car la valeur recherchée est éventuellement dans d'autres colonnes

  • Il faut être plus précis dans ta demande, un fichier (sans données confidentielles) pour voir le résultat voulu ?

Cordialement,

Bonjour,

Effectivement avec un fichier cela serait mieux. J'ai donc minimisé mon fichier en ôtant les données confidentielles.

Je recherche donc de F8 à F860, par exemple la valeur "Yoga". Cette macro doit me montrer les différentes lignes qui

y correspondent sans rechercher la valeur dans d'autres colonnes.

Ma macro est comprise dans le fichier joint. J'espère avoir été plus clair.

Merci encore pour ton aide

Gégé44

Bonjour Gégé44, le forum,

A tester:

Sub Rech_Imputation()
 Dim plage As Range
  Set plage = Sheets("Compte").Range("F2:F" & Sheets("Compte").Range("F" & Rows.Count).End(xlUp).Row)

    Nom = InputBox("Entrez l'Imputation recherché", "Nom Prestataire")
     If Nom = "" Then Exit Sub

    Set c = plage.Find(Nom, lookat:=xlWhole)
     If Not c Is Nothing Then
      firstAddress = c.Address
       Do
        c.Select
         rep = MsgBox("Recherche du suivant", vbOKCancel, "Recherche nouvelle occurence")
          If rep = vbCancel Then Exit Sub
           Set c = Cells.FindNext(c)
            If c Is Nothing Then
             Adresse_encours = 0
            Else
             Adresse_encours = c.Address
            End If
       Loop While Not (c Is Nothing) And (Adresse_encours <> firstAddress)
    End If
  MsgBox "Cette Imputation n'existe pas ou aucune nouvelle occurrence !!", vbCritical, "Message d'erreur"
End Sub

Cordialement,

Merci xorsankukai

Cela fonctionne à présent très bien

Un grand merci et bonne journée

Gégé44

Rechercher des sujets similaires à "recherche valeur vba"