Macro pour copier une feuille et renommer
Fermé
nemotri
Messages postés
175
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
8 décembre 2017
-
12 août 2009 à 23:52
nemotri Messages postés 175 Date d'inscription dimanche 9 août 2009 Statut Membre Dernière intervention 8 décembre 2017 - 15 oct. 2009 à 17:23
nemotri Messages postés 175 Date d'inscription dimanche 9 août 2009 Statut Membre Dernière intervention 8 décembre 2017 - 15 oct. 2009 à 17:23
A voir également:
- Excel - vba copier feuille et renommer
- Liste déroulante excel - Guide
- Si et excel - Guide
- Dessin sms copier coller zizi ✓ - Forum Réseaux sociaux
- Feuille de pointage excel - Télécharger - Tableur
- Renommer plusieurs fichiers - Guide
8 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 743
13 août 2009 à 11:41
13 août 2009 à 11:41
Salut,
Comme ceci :
Sub dupliquer_feuilles()
Dim i As Integer
Dim ongl As String
ongl = InputBox("Saisir ici la lettre figurant dans le nom de la feuille à dupliquer. Exemple S ou N ...", "Nom de l'onglet à dupliquer")
For i = 1 To 51
Sheets(ongl & " " & i).Select
Sheets(ongl & " " & i).Copy After:=Sheets(i + 2)
ActiveSheet.Name = ongl & " " & i + 1
Next i
End Sub
Comme ceci :
Sub dupliquer_feuilles()
Dim i As Integer
Dim ongl As String
ongl = InputBox("Saisir ici la lettre figurant dans le nom de la feuille à dupliquer. Exemple S ou N ...", "Nom de l'onglet à dupliquer")
For i = 1 To 51
Sheets(ongl & " " & i).Select
Sheets(ongl & " " & i).Copy After:=Sheets(i + 2)
ActiveSheet.Name = ongl & " " & i + 1
Next i
End Sub
13 août 2009 à 14:58
Cependant j'ai quelques soucis avec ta procédure.
Voici donc la procédure que j'ai écrit dans VBA en remplaçant avec mes termes pour copier ma feuille "S1" en 51 exemplaires :
Sub dupliquer_feuilles()
Dim i As Integer
Dim ongl As String
ongl = InputBox("S", "S1")
For i = 1 To 51
Sheets(ongl & " " & i).Select
Sheets(ongl & " " & i).Copy After:=Sheets(i + 2)
ActiveSheet.Name = ongl & " " & i + 1
Next i
End Sub
Quand j'éxécute la macro, j'ai une première fenêtre qui s'ouvre sur ma page. Cette fenêtre s'appelle "S1" et dedans il y a écrit "S", il y a un espace vide où je peux écrire quelqueschose et il y a deux boutons "OK" et "annuler".
Si je fais "Ok" j'ai alors une autre fenêtre qui s'ouvre avec le message d'erreur
"Erreur déxécution'9':
L'indice n'appartient pas à la sélection"
Et si je fais "débogage", j'ai la ligne "Sheets(ongl & " " & i).Select" qui est souligné en jaune dans VBA.
Voilà, est-je donc fait une erreur dans les termes que j'avais à remplacer dans la procédure que tu m'a donné où est-ce un souci dans la procédure en elle-même.
nb : j'espère avoir été le plus clair possible pour expliquer le souci, désolé sinon je débute vraiment.