Je suis sous excel 2007.
J'ai deux fichiers REQ.txt et Analyse.xlsx
Je d=E9sire trouver dans REQ.txt les valeurs de la colonne A de
Analyse.xlsx
Mon code -ci-dessous- me retourne syst=E9matiquement "vide",
m=EAme si la valeurs cherch=E9e est pr=E9sente dans REQ.txt
For Each cellule In Range("a2:a2000")
'valeur =E0 rechercher
Windows("Analyse.xlsx").Activate
strCherch=E9 =3D cellule.Value
'o=F9 la trouver
Windows("REQ.txt").Activate
Set PrestaTrouv=E9 =3D Range("A1:U92014").Find(What:=3DstrCherch=E9,
After:=3DActiveCell, LookIn:=3DxlFormulas, _
LookAt:=3DxlWhole, SearchOrder:=3DxlByRows, _
SearchDirection:=3DxlNext, MatchCase:=3DFalse,
_
SearchFormat:=3DFalse).Activate
If PrestaTrouv=E9 Is Nothing Then MsgBox "Found" Else
RangeObj.Select
Next cellule
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jac
Bonjour le nordiste,
et si par macro tu mettais en place un recherchev, quitte à faire ensuite un copier / coller les valeurs ?
Jac
le Nordiste avait énoncé :
Bonjour,
Je suis sous excel 2007. J'ai deux fichiers REQ.txt et Analyse.xlsx Je désire trouver dans REQ.txt les valeurs de la colonne A de Analyse.xlsx Mon code -ci-dessous- me retourne systématiquement "vide", même si la valeurs cherchée est présente dans REQ.txt
For Each cellule In Range("a2:a2000") 'valeur à rechercher Windows("Analyse.xlsx").Activate strCherché = cellule.Value 'où la trouver Windows("REQ.txt").Activate Set PrestaTrouvé = Range("A1:U92014").Find(What:=strCherché, After:¬tiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:úlse, _ SearchFormat:úlse).Activate If PrestaTrouvé Is Nothing Then MsgBox "Found" Else RangeObj.Select Next cellule
Remercierments anticipés pour votre aide
Bonjour le nordiste,
et si par macro tu mettais en place un recherchev, quitte à faire
ensuite un copier / coller les valeurs ?
Jac
le Nordiste avait énoncé :
Bonjour,
Je suis sous excel 2007.
J'ai deux fichiers REQ.txt et Analyse.xlsx
Je désire trouver dans REQ.txt les valeurs de la colonne A de
Analyse.xlsx
Mon code -ci-dessous- me retourne systématiquement "vide",
même si la valeurs cherchée est présente dans REQ.txt
For Each cellule In Range("a2:a2000")
'valeur à rechercher
Windows("Analyse.xlsx").Activate
strCherché = cellule.Value
'où la trouver
Windows("REQ.txt").Activate
Set PrestaTrouvé = Range("A1:U92014").Find(What:=strCherché,
After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse,
_
SearchFormat:úlse).Activate
If PrestaTrouvé Is Nothing Then MsgBox "Found" Else
RangeObj.Select
Next cellule
et si par macro tu mettais en place un recherchev, quitte à faire ensuite un copier / coller les valeurs ?
Jac
le Nordiste avait énoncé :
Bonjour,
Je suis sous excel 2007. J'ai deux fichiers REQ.txt et Analyse.xlsx Je désire trouver dans REQ.txt les valeurs de la colonne A de Analyse.xlsx Mon code -ci-dessous- me retourne systématiquement "vide", même si la valeurs cherchée est présente dans REQ.txt
For Each cellule In Range("a2:a2000") 'valeur à rechercher Windows("Analyse.xlsx").Activate strCherché = cellule.Value 'où la trouver Windows("REQ.txt").Activate Set PrestaTrouvé = Range("A1:U92014").Find(What:=strCherché, After:¬tiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:úlse, _ SearchFormat:úlse).Activate If PrestaTrouvé Is Nothing Then MsgBox "Found" Else RangeObj.Select Next cellule
Remercierments anticipés pour votre aide
michdenis
Bonjour,
J'ai testé cette macro réalisée à partir de la tienne.
Elle fonctionne très bien !
Cette macro doit être placé dans un module de ton classeur qui n'est pas le fichier "texte". Tu dois adapter le nom des objets dans la procédure.
Attention, si ton fichier provient d'une importation, il est possible que certaines cellules contiennent le caractère ascii 160 (espace insécable) qui n'est pas visible à l'oeil mais qui fausse le résultat de la recherche.
'----------------------------------------- Sub test() Dim Cellule As Range Dim StrCherché As String With Worksheets("Feuil3") For Each Cellule In .Range("A2:A2000") StrCherché = Cellule.Value With Workbooks("REQ.txt") With .Worksheets("REQ") With .Range("A:D") Set found = .Find(What:=StrCherché, _ After:Îllule, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:úlse, _ SearchFormat:úlse) End With End With End With If Not found Is Nothing Then 'Si tu veux sélectionner la cellule, 'la feuille où sont tes données doit 'être la feuille active. MsgBox "Trouvé" Else MsgBox "Non trouvé" End If Next End With End Sub '-----------------------------------------
"le Nordiste" a écrit dans le message de groupe de discussion : Bonjour,
Je suis sous excel 2007. J'ai deux fichiers REQ.txt et Analyse.xlsx Je désire trouver dans REQ.txt les valeurs de la colonne A de Analyse.xlsx Mon code -ci-dessous- me retourne systématiquement "vide", même si la valeurs cherchée est présente dans REQ.txt
For Each cellule In Range("a2:a2000") 'valeur à rechercher Windows("Analyse.xlsx").Activate strCherché = cellule.Value 'où la trouver Windows("REQ.txt").Activate Set PrestaTrouvé = Range("A1:U92014").Find(What:=strCherché, After:¬tiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:úlse, _ SearchFormat:úlse).Activate If PrestaTrouvé Is Nothing Then MsgBox "Found" Else RangeObj.Select Next cellule
Remercierments anticipés pour votre aide
Bonjour,
J'ai testé cette macro réalisée à partir de la tienne.
Elle fonctionne très bien !
Cette macro doit être placé dans un module de ton classeur
qui n'est pas le fichier "texte". Tu dois adapter le nom des
objets dans la procédure.
Attention, si ton fichier provient d'une importation, il est possible
que certaines cellules contiennent le caractère ascii 160 (espace insécable)
qui n'est pas visible à l'oeil mais qui fausse le résultat de la recherche.
'-----------------------------------------
Sub test()
Dim Cellule As Range
Dim StrCherché As String
With Worksheets("Feuil3")
For Each Cellule In .Range("A2:A2000")
StrCherché = Cellule.Value
With Workbooks("REQ.txt")
With .Worksheets("REQ")
With .Range("A:D")
Set found = .Find(What:=StrCherché, _
After:Îllule, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse, _
SearchFormat:úlse)
End With
End With
End With
If Not found Is Nothing Then
'Si tu veux sélectionner la cellule,
'la feuille où sont tes données doit
'être la feuille active.
MsgBox "Trouvé"
Else
MsgBox "Non trouvé"
End If
Next
End With
End Sub
'-----------------------------------------
"le Nordiste" <jean-paul.bataille@sfr.com> a écrit dans le message de groupe de discussion
: 28c4d652-c63a-4f57-94ab-6b016fe02e3c@j24g2000yqa.googlegroups.com...
Bonjour,
Je suis sous excel 2007.
J'ai deux fichiers REQ.txt et Analyse.xlsx
Je désire trouver dans REQ.txt les valeurs de la colonne A de
Analyse.xlsx
Mon code -ci-dessous- me retourne systématiquement "vide",
même si la valeurs cherchée est présente dans REQ.txt
For Each cellule In Range("a2:a2000")
'valeur à rechercher
Windows("Analyse.xlsx").Activate
strCherché = cellule.Value
'où la trouver
Windows("REQ.txt").Activate
Set PrestaTrouvé = Range("A1:U92014").Find(What:=strCherché,
After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse,
_
SearchFormat:úlse).Activate
If PrestaTrouvé Is Nothing Then MsgBox "Found" Else
RangeObj.Select
Next cellule
J'ai testé cette macro réalisée à partir de la tienne.
Elle fonctionne très bien !
Cette macro doit être placé dans un module de ton classeur qui n'est pas le fichier "texte". Tu dois adapter le nom des objets dans la procédure.
Attention, si ton fichier provient d'une importation, il est possible que certaines cellules contiennent le caractère ascii 160 (espace insécable) qui n'est pas visible à l'oeil mais qui fausse le résultat de la recherche.
'----------------------------------------- Sub test() Dim Cellule As Range Dim StrCherché As String With Worksheets("Feuil3") For Each Cellule In .Range("A2:A2000") StrCherché = Cellule.Value With Workbooks("REQ.txt") With .Worksheets("REQ") With .Range("A:D") Set found = .Find(What:=StrCherché, _ After:Îllule, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:úlse, _ SearchFormat:úlse) End With End With End With If Not found Is Nothing Then 'Si tu veux sélectionner la cellule, 'la feuille où sont tes données doit 'être la feuille active. MsgBox "Trouvé" Else MsgBox "Non trouvé" End If Next End With End Sub '-----------------------------------------
"le Nordiste" a écrit dans le message de groupe de discussion : Bonjour,
Je suis sous excel 2007. J'ai deux fichiers REQ.txt et Analyse.xlsx Je désire trouver dans REQ.txt les valeurs de la colonne A de Analyse.xlsx Mon code -ci-dessous- me retourne systématiquement "vide", même si la valeurs cherchée est présente dans REQ.txt
For Each cellule In Range("a2:a2000") 'valeur à rechercher Windows("Analyse.xlsx").Activate strCherché = cellule.Value 'où la trouver Windows("REQ.txt").Activate Set PrestaTrouvé = Range("A1:U92014").Find(What:=strCherché, After:¬tiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:úlse, _ SearchFormat:úlse).Activate If PrestaTrouvé Is Nothing Then MsgBox "Found" Else RangeObj.Select Next cellule