if then goto

Résolu
colincib Messages postés 22 Date d'inscription mercredi 31 janvier 2007 Statut Membre Dernière intervention 11 juillet 2007 - 23 févr. 2007 à 11:44
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 - 23 févr. 2007 à 23:29
Hi!

je ne comprends pas pourquoi les quelques lignes qui suivent ne marchent pas.... la ligne FIN existe bien, je n'ai pas de message d'erreur mais même si la Cellule "B7" est vide il y a execution des lignes avant FIN....

Worksheets("Rapport").Activate
Range("B7").Select
If IsEmpty(ActiveCell.Value) Then GoTo FIN

merci
 Cib

11 réponses

colincib Messages postés 22 Date d'inscription mercredi 31 janvier 2007 Statut Membre Dernière intervention 11 juillet 2007
23 févr. 2007 à 15:37
 bon j'y suis arrivé, avec if..then..else..End if...


mais je vérifie que la cellule est vide avec :

If Worksheets("Rapport").Range("B7").Value <> ""

le "IsEmpty" était la source du pb... (pourquoi je ne sais pas?)

merci à tous!

Cib
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
23 févr. 2007 à 11:50
Goto envoie vers une étiquette (de code), par vers une ligne, déjà !
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
23 févr. 2007 à 11:55
Essaye peut-etre avec IsEmpty(ActiveCell), je pense que c'est la cellule qui doit etre vide et non pas sa valeur.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
colincib Messages postés 22 Date d'inscription mercredi 31 janvier 2007 Statut Membre Dernière intervention 11 juillet 2007
23 févr. 2007 à 11:58
ok désolée pour le vocabulaire, suis débutante, si ça peut m'excuser...

"etiquette", en pratique j'ai

Sub xxxx()

Worksheets("Rapport").Activate
Range("B7").Select
If IsEmpty(ActiveCell.Value) Then GoTo FIN

....plein de lignes de code...

FIN:
....plein de lignes de code...

end sub

J'ai déjà utilisé cette fonction sans pb, je pense que c'est mon if isempty qui pose pb??

a++
Cib
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
colincib Messages postés 22 Date d'inscription mercredi 31 janvier 2007 Statut Membre Dernière intervention 11 juillet 2007
23 févr. 2007 à 12:01
Casy

J'ai tenté IsEmpty(ActiveCell), mais pareil, je tombe sur une erreur dans les lignes avant FIN (ce qui est normal, B7 est vide!)
 Cib
0
colincib Messages postés 22 Date d'inscription mercredi 31 janvier 2007 Statut Membre Dernière intervention 11 juillet 2007
23 févr. 2007 à 12:03
mais tu y es c'est bien la cellule qui doit etre vide et non pas sa valeur....

 Cib
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
23 févr. 2007 à 12:43
Bonjour


Un conseil, évite le GOTO :

Sub xxxx()


Worksheets("Rapport").Activate

Range("B7").Select

If IsEmpty(ActiveCell.Value) Then GoTo FIN


....plein de lignes de code...


FIN:

....plein de lignes de code...


end sub


Devient

Sub xxxx()


Worksheets("Rapport").Activate

Range("B7").Select

If not(IsEmpty(ActiveCell.Value)) Then


....plein de lignes de code...


end if

....plein de lignes de code...


end sub


C'est plus propre et c'est plus facile pour debugger.

Il est plus facile de batiser quelqu'un que de la convertir.(surtout en programmation)
VB (6, A excel, .NET), C++, C#.Net
Mon site
0
colincib Messages postés 22 Date d'inscription mercredi 31 janvier 2007 Statut Membre Dernière intervention 11 juillet 2007
23 févr. 2007 à 14:10
NHenry,

ok, j'ai essayé, maintenant c'est l'effet contraire, que B7 soit vide ou non sont exécutées les lignes après le end if....

 Cib
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
23 févr. 2007 à 14:32
normal ... de l'algorithmique de base If...Then ... Else .... End If ...

If not(IsEmpty(ActiveCell.Value)) Then

....plein de lignes de code...
ELSE
....plein de lignes de code...
end if

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
colincib Messages postés 22 Date d'inscription mercredi 31 janvier 2007 Statut Membre Dernière intervention 11 juillet 2007
23 févr. 2007 à 14:55
effectivement...

malgré tout ça ne marche pas...

:-(

Cib

 
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
23 févr. 2007 à 23:29
Et pourquoi ne pas mettre
If Range("B7") = "" then    ("" ou vbNullString...)

MPi
0
Rejoignez-nous