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

Button de commande

  • Initiateur de la discussion Initiateur de la discussion JoelleN
  • 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 !

J

JoelleN

Guest
Bonjour,

Voila mon petit code pr un button de commande qui se retrouve dans un fichier 'joelle" en pièce jointe. En gros ce button devra me permettre de copier tout les feuilles du fichier "Essaiclient "commencant par "Client_"
Après compilation il m'affiche un message d'erreur : l'indice n'appartient pas à la séléction. je ne comprends pas pourquoi???


Merci pr votre aide, j'en ai vraiment besoin...
Private Sub CommandButton1_Click()

Mycount = Workbooks("EssaiClient").Worksheets.Count


For i = 1 To Mycount
If Workbooks("EssaiClient").Worksheets(i).Application.Name = "client_" Then

Workbooks("EssaiClient").Worksheets(i).Copy After:=Test
End If

Next i

End Sub
 

Pièces jointes

Re : Button de commande

bonjour Joëlle,

Où veux-tu copier les feuilles? Dans un autre classeur je suppose! est-ce celui qui contient la macro?

si oui:

Code:
Mycount = Workbooks("EssaiClient").Worksheets.Count


For i = 1 To Mycount
If left(Workbooks("EssaiClient").Worksheets(i).Name,7)= "client_" Then

Workbooks("EssaiClient").Worksheets(i).Copy After:=ThisworkBook.Sheets("Test")
End If

Next i

A bientôt
 
Re : Button de commande

bonjour hasco,

En effet je veux copier mes feuilles dans le fichier "Joelle" que j'ai mis en pièce jointe dans mon premier message. j'ai essayé ton petit code, j'ai toujours le meme message d'erreur...

Merci kan meme
 
Re : Button de commande

Bonjour JoelleN

Teste ceci

Code:
Private Sub CommandButton1_Click()
      Mycount = Workbooks("EssaiClient").Worksheets.Count
    For i = 1 To Mycount
        If Left(Workbooks("EssaiClient").Worksheets(i).Application.Name, 7) = "client_" Then
            Workbooks("EssaiClient").Worksheets(i).Copy After:=Sheets(Sheets.Count)
        End If
    Next i
End Sub

Sous reserve qu'il existe un fichier ouvert du nom de "EssaiClient"
Et si ce fichier a été enregistré change
EssaiClient par EssaiClient.xls

Edit salut Hasco 🙂
 
Re : Button de commande

Un grand merci pour vous, CA MARCHE 😀. Je suis toute contente.
Par contre j'ai pas trop compri cette ligne de code?????
If Left(Workbooks("EssaiClient").Worksheets(i).Application.Name, 7)
 
Re : Button de commande

Re bonjour Joëlle, PierreJean😉

@Joëlle ton message d'erreur signifie que soit c'est le classeur qui n'existe pas soit la feuille qui est en cours de copie.

Dans ton Premier message tu parles de feuilles commençant par "Client_" et dans la ligne de code du même message tu as 'client_" (sans majuscule)
cela peut provenir de cette erreur de frappe.

Edition: Left(????,7) renvoie les sept premiers caractères de la chaine passée en paramètre à la fonction Left. Ici le nom de la feuille.

A bientôt
 
Dernière modification par un modérateur:
- 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

T
Réponses
3
Affichages
937
Tickaff
T
B
Réponses
2
Affichages
715
Bender56
B
N
Réponses
0
Affichages
822
nouun
N
C
Réponses
6
Affichages
1 K
Hogwarts
H
P
  • Question Question
Réponses
3
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…