aide pour rédiger une procédure SVP

Le
deedooz
Bonjour,

Voici ce que j'ai :
Feuil1.Range("A1") = Feuil2.Name
Feuil1.Range("A2") = Feuil3.Name
Feuil1.Range("A3") = Feuil4.Name
Feuil1.Range("A4") = Feuil5.Name
etc le nombre de feuille et leur nom respectif etant amené à évoluer à
la hausse régulièrement.

Ce que j'aimerais, c'est un bout de code qui me permette d'obtenir le même
résultat, mais à l'infini (enfin presque ^_^), peut importe le nombre et le
nom des feuilles de mon classeur.

Merci
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #18511691
Dans le ThisWorkbook de ton classeur,

Tu ajoutes la procédure suivante :

à chaque fois que tu vas ajouter une feuille au classeur
son nom va s'ajouter automatiquement à la liste des
feuilles de la colonne A:A de la Feuil1
Au besoin, tu pourrais même ajouter quelques
lignes de code pour la rebaptiser si besoin est,
avant de la faire l'ajout du nom à la liste.

'---------------------------------
Private Sub Workbook_NewSheet(ByVal Sh As Object)

With Feuil1
With .Range("A1:A65536").End(xup)(2).Row
.Value = Sh.Name
End With
End With

End Sub
'---------------------------------



"deedooz" discussion :
Bonjour,

Voici ce que j'ai :
Feuil1.Range("A1") = Feuil2.Name
Feuil1.Range("A2") = Feuil3.Name
Feuil1.Range("A3") = Feuil4.Name
Feuil1.Range("A4") = Feuil5.Name
etc ... le nombre de feuille et leur nom respectif etant amené à évoluer à
la hausse régulièrement.

Ce que j'aimerais, c'est un bout de code qui me permette d'obtenir le même
résultat, mais à l'infini (enfin presque ^_^), peut importe le nombre et le
nom des feuilles de mon classeur.

Merci
Daniel.C
Le #18511871
Bonjour.

Sub test()
For i = 1 To Sheets.Count
If Sheets(i).CodeName <> "Feuil1" Then
j = Right(Sheets(i).CodeName, Len(Sheets(i).CodeName) - 5)
Cells(j - 1, 1) = Sheets(i).CodeName
End If
Next i
End Sub

Cordialement.
Daniel

Bonjour,

Voici ce que j'ai :
Feuil1.Range("A1") = Feuil2.Name
Feuil1.Range("A2") = Feuil3.Name
Feuil1.Range("A3") = Feuil4.Name
Feuil1.Range("A4") = Feuil5.Name
etc ... le nombre de feuille et leur nom respectif etant amené à évoluer à
la hausse régulièrement.

Ce que j'aimerais, c'est un bout de code qui me permette d'obtenir le même
résultat, mais à l'infini (enfin presque ^_^), peut importe le nombre et le
nom des feuilles de mon classeur.

Merci


deedooz
Le #18512271
parfait merci a vous

"Daniel.C" a écrit :

Bonjour.

Sub test()
For i = 1 To Sheets.Count
If Sheets(i).CodeName <> "Feuil1" Then
j = Right(Sheets(i).CodeName, Len(Sheets(i).CodeName) - 5)
Cells(j - 1, 1) = Sheets(i).CodeName
End If
Next i
End Sub

Cordialement.
Daniel

> Bonjour,
>
> Voici ce que j'ai :
> Feuil1.Range("A1") = Feuil2.Name
> Feuil1.Range("A2") = Feuil3.Name
> Feuil1.Range("A3") = Feuil4.Name
> Feuil1.Range("A4") = Feuil5.Name
> etc ... le nombre de feuille et leur nom respectif etant amené à évoluer à
> la hausse régulièrement.
>
> Ce que j'aimerais, c'est un bout de code qui me permette d'obtenir le même
> résultat, mais à l'infini (enfin presque ^_^), peut importe le nombre et le
> nom des feuilles de mon classeur.
>
> Merci





Publicité
Poster une réponse
Anonyme