Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Petite Macro avec test et textbox

  • Initiateur de la discussion Initiateur de la discussion grovallat
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

G

grovallat

Guest
Bonjour à tous,
Je suis encore assez nouveau dans le monde du VB excel alors j'aurais besoin d'un coup de main pour une petite Macro.

Voilà le contexte:
Sur une feuille 0, j'ai une macro1 qui permet l'ouverture d'une feuille1 et une seconde macro appellé macroX qui éxécute quelques petites opération sur plusieurs feuilles dont la feuille1.

Mais voilà mon problème est que si la macro1 n'a pas été préalablement éxécutée la macroX ne s'éxécutera pas correctement je cherche donc à faire quelque chose du type.

MacroY
test si une feuille1 existe:
si oui alors MacroX s'éxécute
si non textbox "la feuille concernée par la macroX n'existe pas"
end sub

La textbox n'aurait que pour réponse possible un "ok "qui permettrait à l'opérateur qui clique dessus de revenir à la page ou il était (pour éventuellement éxécuter la macro1 par exemple).

Voilà mon soucis, j'espère avoir été clair, si ce n'est pas le cas je vous redonnerai volontiers des infos.

Merci d'avance
 
Re : Petite Macro avec test et textbox

bonjour grovallat,

voici un essai :
Code:
Public Function FeuilleExiste(nomFeuille As String) As Boolean
Dim curSheet As Worksheet
FeuilleExiste = False
For Each curSheet In ThisWorkbook.Sheets
    If curSheet.Name = nomFeuille Then FeuilleExiste = True: Exit Function
Next curSheet
End Function


Public Sub MacroY()
If FeuilleExiste("Feuil1") Then
    'lancer MacroX
Else
    MsgBox "la feuille n'existe pas"
End If
End Sub

a+
 
Re : Petite Macro avec test et textbox

Pardonne moi mais je ne saisis pas ta public function, je pensais plutot pour le test un truc du style balayage des feuille pour savoir si une s'appelle feuille1, mais bon je suis pas un expert.
Pourrai-tu commenter un tout petit peu stp(dsl).
Merci d'avance
 
Re : Petite Macro avec test et textbox

re,

je pensais plutot pour le test un truc du style balayage des feuille pour savoir si une s'appelle feuille1
c'est ce que fait la fonction.

je te renvoie le code commenté.

Code:
Dim curSheet As Worksheet
'on initialise le retour de la fonction à "False" (on suppose que la feuille n'existe pas)
FeuilleExiste = False
'boucler sur l'ensemble des feuilles du classeur
For Each curSheet In ThisWorkbook.Sheets
    'si la feuille courante a le bon nom, la fonction retourne "True" et on quitte la fonction
    If curSheet.Name = nomFeuille Then FeuilleExiste = True: Exit Function
Next curSheet
End Function


Public Sub MacroY()
'ici on appelle la fonction "FeuilleExiste", on va tester si une feuille nommée "Feuil1" existe dans le classeur
'si c'est le cas, la fonction va retourner "True" et on va "rentrer dans le If"
If FeuilleExiste("Feuil1") Then
    'lancer MacroX
Else 'sinon (la feuille n'existe pas), afficher le message
    MsgBox "la feuille n'existe pas"
End If
End Sub

a+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

L
Réponses
9
Affichages
1 K
R
Réponses
2
Affichages
4 K
P
Réponses
1
Affichages
979
Ptrs32
P
M
Réponses
2
Affichages
973
MarionP85
M
S
Réponses
5
Affichages
2 K
SCORP95
S
C
Réponses
21
Affichages
5 K
C
  • Question Question
2
Réponses
29
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…