Clic sur Annuler

Le
Woody
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler pour
arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre une
boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls" 'Sélection
sur les classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de la
boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche la
boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Pierre Fauconnier
Le #5001871
Bonjour

Que veux-tu dire par "arrêter la procédure"?

Ta méthode d'utiliser un If odialog.selecteditems.count devrait te
satisfaire...

Quel est le problème?

Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler pour
arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre une
boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls" 'Sélection
sur les classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de la
boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche la
boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing


--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")

papou
Le #5001831
Bonjour (Re) Woody
La méthode renvoie la valeur 0 si le bouton Annuler a été choisi donc :
oDialog.Show
If oDialog = 0 then
msgbox "opération annulée"
Else
'la suite...

Cordialement
PAscal


"Woody"
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler pour
arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre une
boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls" 'Sélection
sur les classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de
la boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche la
boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing



Pierre Fauconnier
Le #5001741
Salut Pascal...

Es-tu sûr?? J'ai un très gros doute


Bonjour (Re) Woody
La méthode renvoie la valeur 0 si le bouton Annuler a été choisi donc :
oDialog.Show
If oDialog = 0 then
msgbox "opération annulée"
Else
'la suite...

Cordialement
PAscal


"Woody"
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler pour
arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre une
boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls" 'Sélection
sur les classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de la
boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche la
boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing




--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")


papou
Le #5001701
Salut Pierre
Oui j'ai testé et c'est
la valeur 0 qui est renvoyée avec Annuler
la valeur -1 qui est renvoyée avec Ok

odialog = Application.FileDialog(msoFileDialogFilePicker).Show
Debug.Print odialog

Excel 2003

Cordialement
Pascal

"Pierre Fauconnier" message de news:
Salut Pascal...

Es-tu sûr?? J'ai un très gros doute


Bonjour (Re) Woody
La méthode renvoie la valeur 0 si le bouton Annuler a été choisi donc :
oDialog.Show
If oDialog = 0 then
msgbox "opération annulée"
Else
'la suite...

Cordialement
PAscal


"Woody"
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler
pour arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre
une boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls"
'Sélection sur les classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de
la boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche
la boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing




--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")






Pierre Fauconnier
Le #5001691
Oui, d'accord avec toi, mais alors oDialog n'est pas un objet
FileDialog comme montré dans la procédure de Woody, mais une variable
de type long.

Dans le cas d'une utilisation de la méthode comme tu le préconises, il
faut que Woody adapte son code...


Salut Pierre
Oui j'ai testé et c'est
la valeur 0 qui est renvoyée avec Annuler
la valeur -1 qui est renvoyée avec Ok

odialog = Application.FileDialog(msoFileDialogFilePicker).Show
Debug.Print odialog

Excel 2003

Cordialement
Pascal

"Pierre Fauconnier" message de news:
Salut Pascal...

Es-tu sûr?? J'ai un très gros doute


Bonjour (Re) Woody
La méthode renvoie la valeur 0 si le bouton Annuler a été choisi donc :
oDialog.Show
If oDialog = 0 then
msgbox "opération annulée"
Else
'la suite...

Cordialement
PAscal


"Woody"
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler
pour arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre une
boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls" 'Sélection sur les
classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de
la boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche
la boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing




-- Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du moment
présent")





--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")




papou
Le #5001681
Oui c'est vrai, je n'avais pas noté sa déclaration Dim oDialog As
Office.FileDialog

Cordialement
Pascal

"Pierre Fauconnier" message de news:
Oui, d'accord avec toi, mais alors oDialog n'est pas un objet FileDialog
comme montré dans la procédure de Woody, mais une variable de type long.

Dans le cas d'une utilisation de la méthode comme tu le préconises, il
faut que Woody adapte son code...


Salut Pierre
Oui j'ai testé et c'est
la valeur 0 qui est renvoyée avec Annuler
la valeur -1 qui est renvoyée avec Ok

odialog = Application.FileDialog(msoFileDialogFilePicker).Show
Debug.Print odialog

Excel 2003

Cordialement
Pascal

"Pierre Fauconnier" le message de news:
Salut Pascal...

Es-tu sûr?? J'ai un très gros doute


Bonjour (Re) Woody
La méthode renvoie la valeur 0 si le bouton Annuler a été choisi donc :
oDialog.Show
If oDialog = 0 then
msgbox "opération annulée"
Else
'la suite...

Cordialement
PAscal


"Woody"
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler
pour arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre
une boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls" 'Sélection sur les
classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre
de la boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show
'Affiche la boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing




-- Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")





--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")








papou
Le #5001661
Woody
Donc dans ton cas (suite échange avec Pierre) tu peux adapter :
If odialog.Show = 0 then
Msgbox "opération annulée"
Exit Sub
Else
'....

End If

Cordialement
Pascal


"papou" de news: %
Bonjour (Re) Woody
La méthode renvoie la valeur 0 si le bouton Annuler a été choisi donc :
oDialog.Show
If oDialog = 0 then
msgbox "opération annulée"
Else
'la suite...

Cordialement
PAscal


"Woody"
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler
pour arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre une
boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls" 'Sélection
sur les classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de
la boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche
la boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing







Woody
Le #5000801
Pierre et Pascal,

Merci à tous les deux ! Ca marche !

Woody

"papou" de news:
Woody
Donc dans ton cas (suite échange avec Pierre) tu peux adapter :
If odialog.Show = 0 then
Msgbox "opération annulée"
Exit Sub
Else
'....

End If

Cordialement
Pascal


"papou" message de news: %
Bonjour (Re) Woody
La méthode renvoie la valeur 0 si le bouton Annuler a été choisi donc :
oDialog.Show
If oDialog = 0 then
msgbox "opération annulée"
Else
'la suite...

Cordialement
PAscal


"Woody"
Bonjour,

Dans la macro ci-dessous qui ouvre une boite de dialogue permettant de
sélectionner un fichier, comment capter le Clic sur le bouton Annuler
pour arrêter la procédure ?
Merci pour votre aide,

Cordialement,

Woody


Dim oDialog As Office.FileDialog

Set oDialog = XLApp.FileDialog(msoFileDialogFilePicker) 'Ouvre
une boîte de dialogue MS Office FilePicker
oDialog.Filters.Add "Fichiers Excel", "*.xls"
'Sélection sur les classeurs .XLS
oDialog.Title = "Sélectionnez le fichier Excel" 'Titre de
la boîte de dialogue
oDialog.AllowMultiSelect = False 'Pas de
sélection multiple
oDialog.Show 'Affiche
la boîte
If oDialog.SelectedItems.Count > 0 Then
NomClasseurXL = oDialog.SelectedItems(1)
MsgBox "Le classeur Excel sélectionné est : " & NomClasseurXL
End If
Set oDialog = Nothing











Publicité
Poster une réponse
Anonyme