Yes No Cancel Probléme

Bonjour à tous ,

Je viens vers vous , j'ai un petit souci avec le msgBox yesnocancel.

J'ai un classeur avec un onglet qui doit faire:

Quand c'est oui => J'ouvre .....

Quand c'est non => Je regarde dans le dossier de sauvegarde pour voir si le classeur remplacant... existe

Annule ben annule

J'ai déja un code mais qui marche pas bien!

Quand je clique oui => il fait rien!!!

Quand je clique non => il ouvre mes documents!

Quand je clique annule => il affiche mon Msgbox "le dossier sera ouvert"!!!!

Le code:

Sub Ouvrir_Remplaçant()

If MsgBox("Avez-vous regarder si la semaine remplacée existe?", 32 + 3 + 512, "Nicolas product") = vbNo Then

Application.GetOpenFilename = ("H:\DOP DT\Bases Techniques Chauffage\COMPTEUR HORAIRE AGENTS\Semainier divers groupes\Remplaçant\2012")

ElseIf MsgBox("Le dossier sera ouvert") = vbYes Then

Workbooks.Open Filename:="H:\DOP DT\Bases Techniques Chauffage\COMPTEUR HORAIRE AGENTS\Semainier divers groupes\Remplaçant\Model Remplaçant.xlsm"

End If

End Sub

Merci de m'aider

Bonsoir

Sans test car pas de fichier pour

une supposition

Coco67 a écrit :

Quand c'est non => Je regarde dans le dossier de sauvegarde pour voir si le classeur remplacant... existe

Dans ce cas on quitte le programme après

Sub Ouvrir_Remplaçant()
' vbQuestion          32        Affiche l'icône Requête d'avertissement.
' vbYesNoCancel       3         Affiche les boutons Oui, Non et Annuler.
' vbDefaultButton3    512       Le troisième bouton est le bouton par défaut.

' Différents retours
' vbCancel  2   Annuler
' vbYes     6   Oui
' vbNo      7   Non

  Select Case MsgBox("Avez-vous regarder si la semaine remplacée existe ?", vbQuestion + vbYesNoCancel + vbDefaultButton3, "Nicolas product")
    Case vbNo
      ' Regarde dans le répertoire
      Application.GetOpenFilename = ("H:\DOP DT\Bases Techniques Chauffage\COMPTEUR HORAIRE AGENTS\Semainier divers groupes\Remplaçant\2012")
      Exit Sub        ' On quitte le programme
    Case vbYes
      MsgBox "Ouverture du fichier"
      Workbooks.Open Filename:="H:\DOP DT\Bases Techniques Chauffage\COMPTEUR HORAIRE AGENTS\Semainier divers groupes\Remplaçant\Model Remplaçant.xlsm"
    Case Else
      ' Sortie du programme
      Exit Sub
  End Select
  '
  ' suite du programme si le fichier est ouvert
  '
End Sub

Bonsoir Banzai,

Ca fonctionne sauf que pour :

Case vbNo

' Regarde dans le répertoire

Application.GetOpenFilename = ("H:\DOP DT\Bases Techniques Chauffage\COMPTEUR HORAIRE AGENTS\Semainier divers groupes\Remplaçant\2012")

Exit Sub ' On quitte le programme

Il m'ouvre mes documents, C:\ ....

Et non H:\....

Sinon c'est nikel.

Je vous remercie

Bonsoir

Je n'ai pas modifié cette ligne

Si avant elle ouvrait le bon répertoire, je ne vois pas pourquoi maintenant en ouvrirait un autre répertoire

Je ne connais pas trop la syntaxe de GetOpenFilename

En regardant un peu il faut d'abord changer de répertoire

et ensuite appeler la méthode

style

Sub test()
Dim Rep As String
ChDir "H:\DOP DT\Bases Techniques Chauffage\COMPTEUR HORAIRE AGENTS\Semainier divers groupes\Remplaçant\2012"
rep = Application.GetOpenFilename
End Sub

Un connaisseur indiquera la bonne syntaxe, moi je n'en sais pas plus

Bonjour,

En tout cas merci, je vais me pencher de plus prêt sur cette erreur....

Juste un truc, depuis le début elle m’ouvrait C:/ ....,si çà peu aider quelque.

Merci et bonne journée

Rechercher des sujets similaires à "cancel probleme"