cs_miniboo
Messages postés14Date d'inscriptionjeudi 16 juillet 2009StatutMembreDernière intervention10 août 2010
-
21 janv. 2010 à 16:06
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
21 janv. 2010 à 17:04
Bonjour à tous,
J'ai un petit souci avec ma macro qui recherche dans une colonne qui contient des Codes Postaux, un Code Postal en particulier rentré dans un UserForm, et qui le remplace par un autre, rentré dans une autre Textbox de mon Userform.
Cette macro fonctionne très bien avec les champs "Adresse", "Ville", "Pays",...mais pas du tout avec des nombres type code postal ou numero de téléphone.
Je suppose que ca doit avoir un lien avec la déclaration des variables, mais n'arrive pas à trouver la bonne!
Ma macro est la suivante:
Sub FindrepCP1()
Dim target, cell As Range
Dim i, k As Variant
i = resultatmembre.Label27.Caption
k = resultatmembre.TextBox3.Value
Set target = Sheets("CGENERAL").Range(Range("F3"), Range("F65536").End(xlUp))
For Each cell In target
If cell.Value i Then cell.Value k
Next cell
End Sub
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 21 janv. 2010 à 16:23
Bonjour,
1) évite de donner les noms cell et target (pour éviter des ambiguïtés)
2) Dim x, y as range ne définit en Range que y ( x reste variant) !
essaye :
Dim targeta As Range, cell As Range
Dim i As string, k As String
i = resultatmembre.Label27.Caption
k = resultatmembre.TextBox3.Value
Set target = Sheets("CGENERAL").Range(Range("F3"), Range("F65536").End(xlUp))
For Each c In targeta
If c.Value i Then c.Value k
Next c
set targeta = Nothing ' (libère)
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer Cliquer sur "Réponse acceptée" (en bas d'une solution adéquate)
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 21 janv. 2010 à 17:04
Compare par ailleurs ce qui est comparable...
Nous ignorons les formats de tes cellules en colonne F
Il est clair que si par exemple tu compares "5500" à un label contenant par exemple "05500" ==>> badaboum.
Or une cellule formatée en code postal et affichant "05500" contient en réalité la valeur 5500
utilise la propriété Text de ta cellule plutôt que sa propriété Value
If c.text i then c.value k ' ce qui, pour un code postal, suppose que ta textbox contient un numérique
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer Cliquer sur "Réponse acceptée" (en bas d'une solution adéquate)