VBA EXCEL macro [Résolu]

Signaler
Messages postés
8
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
5 juin 2007
-
Messages postés
8
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
5 juin 2007
-
bonjour,
on se casse la tête à deux depuis des heures pour trouver comment arrêter une macro lorsque l'utilisateur appui sur la bouton annuler d'une inputbox créer par la macro voici un morceau de code :

Sub TraitementNouvellesDonnées()
'
' TraitementNouvellesDonnées Macro
' Macro enregistrée le 29/05/2007 par help33
'
' Touche de raccourci du clavier: Ctrl+t
    Dim chemin As String
    chemin = "W:\FAI\SYSTEM\Echange\nicolas"
    chemin = InputBox("Tapez le chemin de destination de sauvegarde de vos fichiers ( " & chemin & " par défaut)", "")

lorsque cette inputbox apparait, et que l'utilisateur appui sur le bouton annuler, il faudrait que la macro s'arrête.

merci à ceux qui voudront bien prêter attention à notre problème.

6 réponses

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
49
Salut,

Et ceci?
Sub TraitementNouvellesDonnées()
'
' TraitementNouvellesDonnées Macro
' Macro enregistrée le 29/05/2007 par help33
'
' Touche de raccourci du clavier: Ctrl+t
   Dim chemin As String
   chemin = "W:\FAI\SYSTEM\Echange\nicolas"
   chemin = InputBox("Tapez le chemin de destination de sauvegarde de vos fichiers ( " & chemin & " par défaut)", "")
   If chemin = vbNullString Then Exit Sub , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
8
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
5 juin 2007

il faudrait que tu nous explique ton instrution vbNullStringcar si on comprend bien cela signifie que l'utilisateur ne saisie pas de chemin cela arrête la macro.
sauf que s'il ne saisie pas de chemin il y a un chemin par défaut.
On veut arrêter la macro que s'il appui sur le bouton annuler de l'inputbox.
A moins que ton instruction (vbNullString) ne soit pas ce qu'on pense ! ^^
Messages postés
2237
Date d'inscription
lundi 29 mai 2006
Statut
Membre
Dernière intervention
29 mai 2008
9
Salut, Annuler retourne "" (chaine vide) = vbNullString




 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)

Si la réponse vous convient: Réponse acceptée < body>
Messages postés
8
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
5 juin 2007

c'est donc ce qu'on avait compris.
Mais le problème c'est qu'il y a un chemin par défaut qui s'affiche si la variable est vide.
On avait oublié de mettre un morceau de code ^^ qui est :
If (chemin = "") Then
    chemin = "W:\FAI\SYSTEM\Echange\nicolas"
End If

Il peut cliquer sur le bouton OK même s'il ne rentre rien.
Dans ce cas la le chemin par défaut est fait par l'alternative.

C'est pour ça qu'on veut savoir quand l'utilisateur clique sur le bouton annuler de l'inputbox.
Et s'il le fait arrêter la macro.
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
49
Salut,
Avez vous pris la peine au moins de testé?
Que chercher vous a faire exactement?
Tu voulais sortir de la macro avec le code proposé ca sort NON?

Alors soit j'ai rien compris soit vous n'avez expliquer clairement ce que vous souhaitiez...

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
8
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
5 juin 2007

Bon en fait en cherchant un peu plus encore on a trouver :

Dim chemin As String
    chemin = "W:\FAI\SYSTEM\Echange\nicolas"
    chemin = InputBox("Tapez le chemin de destination de sauvegarde de vos fichiers ( " & chemin & " par défaut)", "", chemin)
    If (chemin = "") Then
    Exit Sub
    End If

Dans la syntaxe de l'inputbox, la troisième virgule spécifie le texte par défaut.
On y rentre donc la variable.
Et comme disait jrivet quand on appuie sur annuler ça vide tout.
Merci
Bonne journée