OVH Cloud OVH Cloud

Exit du macro

20 réponses
Avatar
Érico
Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite sur
(ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________

10 réponses

1 2
Avatar
RV
Bonsoir Erico,
Mettre Exit Sub pour sotir de la macro ou End pour sortir de la procédure à
l'endroit voulu.
Cordialement
RV


"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite sur
(ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________




Avatar
Érico
Juste ça, ça ne fait sortir direct.
Je suis vraiment nul en VBA.

Il faut mettre un "If" non?

Si on clique le "annuler" sort de la macro...


"RV" a écrit dans le message de news:

Bonsoir Erico,
Mettre Exit Sub pour sotir de la macro ou End pour sortir de la procédure
à l'endroit voulu.
Cordialement
RV


"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________








Avatar
LSteph
Bonsoir Erico,

met une ligne après la ligne de l'inputbox
if B="" then exit sub

lSteph
"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite sur
(ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________




Avatar
Érico
Non plus, ça bogue encore quand je clique "Annuler" et il sort avant de
finir la macro....
J'ai l'impression qu'il faut mettre quelque chose entre les guillemets pour
l'équivalent du bouton "annuler"

if B="" then exit sub



"LSteph" a écrit dans le message de news:
%23aNKA%
Bonsoir Erico,

met une ligne après la ligne de l'inputbox
if B="" then exit sub

lSteph
"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________








Avatar
LSteph
a quel endroit?

"Érico" a écrit dans le message de news:

Non plus, ça bogue encore quand je clique "Annuler" et il sort avant de
finir la macro....
J'ai l'impression qu'il faut mettre quelque chose entre les guillemets
pour l'équivalent du bouton "annuler"

if B="" then exit sub



"LSteph" a écrit dans le message de news:
%23aNKA%
Bonsoir Erico,

met une ligne après la ligne de l'inputbox
if B="" then exit sub

lSteph
"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________












Avatar
Érico
Dans mon inputbox, j'ai un espace blanc pour aller chercher la cellule.
J'ai un bouton "ok"
J'ai un bouton "annuler"

Quand je clique ok, il envoie la coordonnée dans "B"
Le bouton "annuler", ça bogue.
C'est pas vraiment le "B2 qui devient annuler.



"LSteph" a écrit dans le message de news:

a quel endroit?

"Érico" a écrit dans le message de news:

Non plus, ça bogue encore quand je clique "Annuler" et il sort avant de
finir la macro....
J'ai l'impression qu'il faut mettre quelque chose entre les guillemets
pour l'équivalent du bouton "annuler"

if B="" then exit sub



"LSteph" a écrit dans le message de news:
%23aNKA%
Bonsoir Erico,

met une ligne après la ligne de l'inputbox
if B="" then exit sub

lSteph
"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________
















Avatar
Denys
Bonjour Érico,

Si, au lieu d'un inputbox tu utilisais un Userform avec 1 textbox où
l'usager écrirait ses données et 2 boutons de commande un OK et l'autre avec
Cancel...

L'instruction pour le bouton Cancel serait:

Private Sub CommandButton2_Click()
Unload Userform1 (ce qui te ferait sortir complètement)
End Sub

Quant à ta macro, elle deviendrait:

Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.TextBox1(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
etc.......

Est-ce que ça pourrait te convenir?

Denys




Dans mon inputbox, j'ai un espace blanc pour aller chercher la cellule.
J'ai un bouton "ok"
J'ai un bouton "annuler"

Quand je clique ok, il envoie la coordonnée dans "B"
Le bouton "annuler", ça bogue.
C'est pas vraiment le "B2 qui devient annuler.



"LSteph" a écrit dans le message de news:

a quel endroit?

"Érico" a écrit dans le message de news:

Non plus, ça bogue encore quand je clique "Annuler" et il sort avant de
finir la macro....
J'ai l'impression qu'il faut mettre quelque chose entre les guillemets
pour l'équivalent du bouton "annuler"

if B="" then exit sub



"LSteph" a écrit dans le message de news:
%23aNKA%
Bonsoir Erico,

met une ligne après la ligne de l'inputbox
if B="" then exit sub

lSteph
"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________





















Avatar
Érico
Je ne peut pas utiliser cet inputbox?


"Denys" a écrit dans le message de news:

Bonjour Érico,

Si, au lieu d'un inputbox tu utilisais un Userform avec 1 textbox où
l'usager écrirait ses données et 2 boutons de commande un OK et l'autre
avec
Cancel...

L'instruction pour le bouton Cancel serait:

Private Sub CommandButton2_Click()
Unload Userform1 (ce qui te ferait sortir complètement)
End Sub

Quant à ta macro, elle deviendrait:

Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.TextBox1(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
etc.......

Est-ce que ça pourrait te convenir?

Denys




Dans mon inputbox, j'ai un espace blanc pour aller chercher la cellule.
J'ai un bouton "ok"
J'ai un bouton "annuler"

Quand je clique ok, il envoie la coordonnée dans "B"
Le bouton "annuler", ça bogue.
C'est pas vraiment le "B2 qui devient annuler.



"LSteph" a écrit dans le message de news:

a quel endroit?

"Érico" a écrit dans le message de news:

Non plus, ça bogue encore quand je clique "Annuler" et il sort avant
de
finir la macro....
J'ai l'impression qu'il faut mettre quelque chose entre les guillemets
pour l'équivalent du bouton "annuler"

if B="" then exit sub



"LSteph" a écrit dans le message de news:
%23aNKA%
Bonsoir Erico,

met une ligne après la ligne de l'inputbox
if B="" then exit sub

lSteph
"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.
Ensuite
sur (ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________























Avatar
LSteph
Pourquoi?
"Érico" a écrit dans le message de news:
%23%
Je ne peut pas utiliser cet inputbox?


"Denys" a écrit dans le message de news:

Bonjour Érico,

Si, au lieu d'un inputbox tu utilisais un Userform avec 1 textbox où
l'usager écrirait ses données et 2 boutons de commande un OK et l'autre
avec
Cancel...

L'instruction pour le bouton Cancel serait:

Private Sub CommandButton2_Click()
Unload Userform1 (ce qui te ferait sortir complètement)
End Sub

Quant à ta macro, elle deviendrait:

Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.TextBox1(Prompt:="Sélectionner la cellule. Ensuite
sur (ok)", Type:=8)
etc.......

Est-ce que ça pourrait te convenir?

Denys




Dans mon inputbox, j'ai un espace blanc pour aller chercher la cellule.
J'ai un bouton "ok"
J'ai un bouton "annuler"

Quand je clique ok, il envoie la coordonnée dans "B"
Le bouton "annuler", ça bogue.
C'est pas vraiment le "B2 qui devient annuler.



"LSteph" a écrit dans le message de news:

a quel endroit?

"Érico" a écrit dans le message de news:

Non plus, ça bogue encore quand je clique "Annuler" et il sort avant
de
finir la macro....
J'ai l'impression qu'il faut mettre quelque chose entre les
guillemets
pour l'équivalent du bouton "annuler"

if B="" then exit sub



"LSteph" a écrit dans le message de news:
%23aNKA%
Bonsoir Erico,

met une ligne après la ligne de l'inputbox
if B="" then exit sub

lSteph
"Érico" a écrit dans le message de news:

Bonjour à tous,

J'aimerais lui dire que si je coche "annuler" qu'il sort de la
macro
complètement, comment je fais celà?

Voici ma macro:
__________________________________
Sub DatePicker()
Dim A As Variant, B As Range, C As Integer
Set B = Application.InputBox(Prompt:="Sélectionner la cellule.
Ensuite
sur (ok)", Type:=8)
Dim col As Integer
col = B.Cells.Column
Dim ligne As Integer
ligne = B.Cells.Row
Cells(ligne, col).Select
iFlag = Not ThisWorkbook.Sheets(1).CheckBoxes("Case1") = 1
If iFlag Then UserForm1.Show Else frmDPicker.Show
End Sub
__________________________________



























Avatar
Alain CROS
Bonjour.

Sub SafeInputBox()
Dim B As Range
On Error Resume Next
Set B = Application.InputBox(Prompt:= _
"Sélectionner la cellule. Ensuite sur(ok)", Type:=8)
On Error GoTo 0
If Not B Is Nothing Then
MsgBox B.Address
Else
MsgBox "Annuler"
End If
End Sub

Alain CROS

"Érico" a écrit dans le message de news: #
| Dans mon inputbox, j'ai un espace blanc pour aller chercher la cellule.
| J'ai un bouton "ok"
| J'ai un bouton "annuler"
|
| Quand je clique ok, il envoie la coordonnée dans "B"
| Le bouton "annuler", ça bogue.
| C'est pas vraiment le "B2 qui devient annuler.
|
1 2