Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA - Boucle sur cellules non vides

2 réponses
Avatar
ThierryP
Bonjour le forum, bonjour Denis !

Mon souci du jour : Dans un fichier de plusieurs milliers (voire dizaines de...), je dois faire un traitement en fonction du contenu des cellules de la colonne M.
Seules certaines cellules de cette colonne sont non vides.

Comment expliquer Í  VBA, une fois le traitement d'une ligne effectué, d'aller directement Í  la prochaine (ou précédente) cellule non vide pour gagner du temps ?

Je pensais définir une plage discontinue contenant toutes ces cellules non vides.....mais je ne trouve pas la syntaxe correspondante (et Internet ne m'a pas beaucoup aidé sur ce coup !)

Merci d'avance

ThierryP

2 réponses

Avatar
MichD
Le 05/04/22 Í  09:33, ThierryP a écrit :
Bonjour le forum, bonjour Denis !
Mon souci du jour : Dans un fichier de plusieurs milliers (voire dizaines de...), je dois faire un traitement en fonction du contenu des cellules de la colonne M.
Seules certaines cellules de cette colonne sont non vides.
Comment expliquer Í  VBA, une fois le traitement d'une ligne effectué, d'aller directement Í  la prochaine (ou précédente) cellule non vide pour gagner du temps ?
Je pensais définir une plage discontinue contenant toutes ces cellules non vides.....mais je ne trouve pas la syntaxe correspondante (et Internet ne m'a pas beaucoup aidé sur ce coup !)
Merci d'avance
ThierryP

Bonjour,
J'ai supposé que le contenu de la colonne M contenait des constantes de
type texte ou numérique.
'------------------------------------
Sub test()
Dim Rg As Range, C As Range
With Worksheets("Feuil1") 'Nom Feuille Í  adapter
Set Rg = .Range("M1:M" & .Range("M" & .Rows.Count).End(xlUp).Row)
Set Rg = Rg.SpecialCells(xlCellTypeConstants, 3)
End With
For Each C In Rg
MsgBox C.Address
Next
End Sub
'------------------------------------
MichD
Avatar
ThierryP
Bonjour Denis!
Toujours aussi rapide..... En fait, j'avais annulé ce message dans la foulée pensant avoir trouvé une solution... Mais en fait je devais quand même boucler pour tester le contenu des cellules, donc le gain n'y est pas vraiment !
Et ta réponse est exactement ce qu'il me fallait, comme d'habitude :-)
Encore un grand merci,
ThierryP
P.S : est-ce que ça t'arrive d'aller manger, dormir, prendre une douche, enfin n'importe quoi qui t'éloigne de ton écran ? Parce qu'Í  chaque fois, tu réponds dans la minute qui suit !!!!!!!
Mais je ne vais pas me plaindre de ton assiduité, qui me sauve la mise !!!!!
MichD