Salut tout le monde
j'ai franchement hésité avant de poster car j'ai cherché dans mon coin, puis sur les forums mais je ne trouve pas...
je fais une boucle for each pour tester le début des formules présentes dans la plage... le but étant de copier/coller les valeurs des cellules correspondantes.
mais le truc, c'est que la boucle teste en boucle la premiere cellule de la plage...
Alors je me trouve assez nul de pas comprendre pourquoi, parce que je suis sur que c'est franchement basique, mais là... j'ai pas...
en même temps, je n'ai jamais été à l'aise avec les boucles for each, jamais compris pourquoi...
voila mon code (la fonction fonctionne, c'est juste la boucle qui... boucle bien mais toujours sur la même cellule...)
Si une bonne âme a pitié de moi...
merci beaucoup de votre aide !
Julien
j'ai franchement hésité avant de poster car j'ai cherché dans mon coin, puis sur les forums mais je ne trouve pas...
je fais une boucle for each pour tester le début des formules présentes dans la plage... le but étant de copier/coller les valeurs des cellules correspondantes.
mais le truc, c'est que la boucle teste en boucle la premiere cellule de la plage...
Alors je me trouve assez nul de pas comprendre pourquoi, parce que je suis sur que c'est franchement basique, mais là... j'ai pas...
en même temps, je n'ai jamais été à l'aise avec les boucles for each, jamais compris pourquoi...
voila mon code (la fonction fonctionne, c'est juste la boucle qui... boucle bien mais toujours sur la même cellule...)
Si une bonne âme a pitié de moi...
merci beaucoup de votre aide !
Julien
VB:
Sub foreachmarchepas()
Dim Cellule As Range
For Each Cellule In Range("A1:J100")
If Left(ActiveCell.Formula, 7) = "=Dosssi" Or Left(ActiveCell.Value, 7) = "=Adress" Or Left(ActiveCell.Value, 7) = "=Codepo" Or Left(ActiveCell.Value, 7) = "=TEXTE(" Or Left(ActiveCell.Value, 7) = "=SI(Cré" Or Left(ActiveCell.Value, 7) = "=SI(Déb" Or Left(ActiveCell.Value, 7) = "=Crédit" Or Left(ActiveCell.Value, 6) = "=Débit" Then
ActiveCell.Copy
ActiveCell.PasteSpecial Paste:=xlPasteValues
End If
MsgBox ActiveCell.Address
Next Cellule
End Sub