Si range de cellule non vide, alors....

charette63

XLDnaute Occasionnel
bonjour à toutes et tous,

j'ai trouvé, sur la toile, ce code qui me permet de lancer une macro si la cellule est vide:

Code:
Sub Cellule_non_vide()
If Not IsEmpty(Range("A1")) Then
    MsgBox "pas vide"
    End If
End Sub

le code est parfais

je modifie le code pour vérifier un Range de cellules:

Code:
Sub Cellule_non_vide()
If Not IsEmpty(Range("A1:A20")) Then
    MsgBox "pas vide"
    End If
End Sub

et là, bien que mes cellules soient vides (avec certitude, je l'ai testé sur une nouvelle feuille excel vierge) la MsgBox apparait

Pour info, la ligne Msgbox sera remplacée par une macro

Pouvez-vous m'aider

merci

cordialement
Thierry
 

mth

XLDnaute Barbatruc
Re : Si range de cellule non vide, alors....

Bonjour,

Peut-être comme ceci:

Code:
Sub Cellule_non_vide()
If WorksheetFunction.CountA(Range("A1:A20")) > 0 Then
    MsgBox "pas vide"
End If
End Sub

Bonne journée,

mth

Edit: :) :) :) Hi Dull :) :) :)
Bien contente de te croiser :)
Bise,
m

Edit 2: Hello Kjin :D:D:D
 
Dernière édition:

Dull

XLDnaute Barbatruc
Re : Si range de cellule non vide, alors....

Salut charette63, le Forum

Peux tu essayer ce code

Code:
Sub Cellule_non_vide()
Dim i As Byte
For i = 1 To 20
If Not IsEmpty(Cells(i, 1)) Then MsgBox "Cellule A" & i & " pas vide"
Next i
End Sub
EDITION: Salut Mireille:) toujours à la traine le Dull... Bises... de plus j'ai peut-être mal compris :p
Et en plus j'ai raté Kjin :)
Bonne Journée
 
Dernière édition:

kjin

XLDnaute Barbatruc
Re : Si range de cellule non vide, alors....

Bonjour,
Tu ne peux pas tester de cette manière un objet Range (F1 ---> fonction IsEmpty)
Il y a plusieurs manière de tester un objet Range, tout dépend de ce que tu entends par vide (formules ?)
Code:
Set x = Range("A1:A20").Find("*")
If Not x Is Nothing Then MsgBox "pas vide"
A+
kjin
 

charette63

XLDnaute Occasionnel
Salut Mth, Salut Dull,

j'ai opté pour le code de Mth, il me convient parfaitement.

Dull, ton code fonctionne, mais il m'active la msgbox à chaque fois que la macro rencontre une cellule vide dans mon range. Il est précis quant au renseignement donné mais ne s'applique pas à mon cas.

Merci à vous deux

cordialement
Thierry
 

Discussions similaires

Statistiques des forums

Discussions
312 571
Messages
2 089 775
Membres
104 272
dernier inscrit
stef606