Verification existence feuille

leina_33

XLDnaute Nouveau
Bonjour à tous,

voila plus de 3h que je cherche, lit, teste désespérement une solution à mon problème de verification de feuille existante.
Etant débutante et autodidacte, j'ai beaucoup de mal à transposer les macros déjà faites pour les autres :(
Je suis sure que la solution est déjà sur le forum mais je n'y arrive pas.


Je m'explique :

L'utilisateur 1 lance une premiere macro via un bouton dans mon fichier.
Cette premiere macro, en plus de faire plein de choses, crée une feuille "prodef".

L'utilisateur 2 lance une deuxieme macro via un autre bouton.
cette seconde macro commence par une Msgbox qui demande à l'utilisateur s'il a saisi les données sur la feuille "prodef". S'il repond OUI, j'ai 15 tonnes de calcul, s'il repond non, j'ai une msgBox qui dit que le fichier n'est pas à jour.

le soucis c'est qu'il y a 3 possibilités:

L'utilisateur 2 clique sur:
- NON : pas de probleme
- OUI et que la 1ere macro a été lancée et donc que la feuille "prodef" existe: pas de probleme
- OUI et la 1ere macro n'a pas été lancée et donc la feuille n'existe pas : Ca plante

Code:
Sub Recprodef()
'
'
'MsgBox Oui/Non
Select Case MsgBox("Avez-vous collé le 'prodef' dans l'onglet correspondant ?", vbYesNo, "Confirmation Prodef")
    Case vbNo
        'procédure si clic sur Non
        'Message de non mise à jour
        MsgBox "Le fichier n'a pas été mis à jour.", vbOKOnly + vbExclamation, " échec de mise à jour"
    
    Case vbYes
        'procédure si clic sur Oui
         'Supprimer lignes 1&3 de prodef
        Sheets("Prodef").Select
        Range("1:1,3:3").Select
        Selection.Delete Shift:=xlUp
…
        'Message de mise à jour
        MsgBox "Le fichier a été mis à jour.", vbOKOnly + vbInformation, "réussite de mise à jour"

   
End Select
End Sub

Je precise bien que je veux tester la présence de la feuille et non le lancement de la 1ere macro.
Pour résumer tout mon blabla au cas ou je vous ai perdu en route :
Il faut tester apres action de l'utilisateur 2 sur la MsgBox si la feuille existe.

Merci infiniment
 

Softmama

XLDnaute Accro
Re : Verification existence feuille

Bonjour, tu peux modifier ta macro ainsi :

VB:
Sub Recprodef()
'
'
'MsgBox Oui/Non
Select Case MsgBox("Avez-vous collé le 'prodef' dans l'onglet correspondant ?", vbYesNo, "Confirmation Prodef")
    Case vbNo
        'procédure si clic sur Non
        'Message de non mise à jour
        MsgBox "Le fichier n'a pas été mis à jour.", vbOKOnly + vbExclamation, " échec de mise à jour"
   
    Case vbYes
        'procédure si clic sur Oui
         'Supprimer lignes 1&3 de prodef
on error resume next
        Sheets("Prodef").Select
if Err = 9 then msgbox "La feuille Prodef n'existe pas": exit sub
Err.clear: on error goto 0
        Range("1:1,3:3").Select
        Selection.Delete Shift:=xlUp
…
        'Message de mise à jour
        MsgBox "Le fichier a été mis à jour.", vbOKOnly + vbInformation, "réussite de mise à jour"

   
End Select
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 413
Messages
2 088 201
Membres
103 766
dernier inscrit
mahieux