fonction cells avec set c =... Do...

  • Initiateur de la discussion Initiateur de la discussion gh4
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

gh4

XLDnaute Occasionnel
bonjour
voici le probleme pouuriez eclairer ma lanterne

With Worksheets("enreg").Range("f5:f5000")
Set c = .Find(Range("f1"), LookIn:=xlValues, After:=Range("f5"))
If Not c Is Nothing Then
firstAddress = c.Address
Do


Cells(lign, colon - 1) = "oui"
Cells(lign, colon) = "non"
Cells(lign, colon + 2) = "merci"

Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress And flag = vbNo

en fonction de F1 j'aimerais remplacer les cellules trouver par "oui" "non" etc
mais ma fonction cells(lign,colon) ne fonctionne pas pourtant il me trouve bien la case avec firstadress


d'avance merci
cordialement
 
Re : fonction cells avec set c =... Do...

Bonjour gh4

Il faut définir la feuille devant Cells. Je vous propose :

Code:
[COLOR="Red"]With Worksheets("enreg")[/COLOR]
Set c = [COLOR="Red"].Range("f5:f5000")[/COLOR].Find(Range("f1"), LookIn:=xlValues, After:=Range("f5"))
If Not c Is Nothing Then
firstAddress = c.Address
Do


.Cells(lign, colon - 1) = "oui"[COLOR="Red"]'ne pas oublier le point[/COLOR]
.Cells(lign, colon) = "non"
.Cells(lign, colon + 2) = "merci"

Set c = [COLOR="Red"].Range("f5:f5000")[/COLOR].FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress And flag = vbNo

Vérifiez aussi s'il ne faut pas un point devant les autres Range.

A+
 
Re : fonction cells avec set c =... Do...

Bonsoir, bonsoir job,
lign , colon c'est quoi ?
A quoi peut te servir ta macro si tu ne références pas les cellules à modifier par rapport à l'adresse de la variable "c" que tu recherches dans la colonne F ??
Au lieu de cells(lign, colon), ne serait ce pas plutôt cells(c.Row, c.Column) et pour la boucle
Code:
...
With Sheets("Enreg")
    For Each C In .Range("F5:F55000")
       If C = .Range("F1").Value Then
         Cells(C.Row, C.Column - 1) = "oui"
         Cells(C.Row, C.Column) = "non" ' ???, j'ai un doute
         Cells(C.Row, C.Column + 2) = "merci"
       End If
    Next
End With
...
A+
kjin
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
16
Affichages
2 K
Réponses
12
Affichages
1 K
Réponses
12
Affichages
1 K
Retour