Imprimer Liste des onglet d'un classeur

Le
michir
Bonjour,
Je souhaiterais imprimer la liste des onglets d'un classeur, sans
passer par les macro complémentaires que l'on trouve sur le net
Je suis avec Excel 2010
Merci à tous
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 #23119101
Bonjour,

'--------------------------------------------
Sub test()
Dim sh As Worksheet, T(), Nb As Integer

With ThisWorkbook
Nb = .Sheets.Count
ReDim T(1 To Nb)
For a = 1 To Nb
T(a) = .Sheets(a).Name
Next
End With

Application.ScreenUpdating = False
Set sh = Worksheets.Add
With sh.Range("A1")
.Resize(UBound(T)) = Application.Transpose(T)
.PrintOut
End With
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True

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



MichD
--------------------------------------------
"michir" a écrit dans le message de groupe de discussion :


Bonjour,
Je souhaiterais imprimer la liste des onglets d'un classeur, sans
passer par les macro complémentaires que l'on trouve sur le net
Je suis avec Excel 2010
Merci à tous
michir
Le #23119131
On 12 fév, 16:30, "michdenis"
Bonjour,

'--------------------------------------------
Sub test()
Dim sh As Worksheet, T(), Nb As Integer

With ThisWorkbook
    Nb = .Sheets.Count
    ReDim T(1 To Nb)
    For a = 1 To Nb
        T(a) = .Sheets(a).Name
    Next
End With

Application.ScreenUpdating = False
Set sh = Worksheets.Add
With sh.Range("A1")
    .Resize(UBound(T)) = Application.Transpose(T)
    .PrintOut
End With
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True

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

MichD
--------------------------------------------
"michir"  a crit dans le message de groupe de discussion :


Bonjour,
Je souhaiterais imprimer la liste des onglets d'un classeur, sans
passer par les macro compl mentaires que l'on trouve sur le net
Je suis avec Excel 2010
Merci tous



Bonjour MihD,
Cette macro n'imprime que le nom du premier onglet le plus à gauche.
Je cherche à obtenir la liste de tous les onglets du classeur qui en
comporte une trentaine...Il manque sans doute peu de chose
Merci à toi
Michel
michdenis
Le #23119161
Tu as bien raison, il manque un petit bout !
;-)

'--------------------------------------------
Sub test()
Dim sh As Worksheet, T(), Nb As Integer

With ThisWorkbook
Nb = .Sheets.Count
ReDim T(1 To Nb)
For a = 1 To Nb
T(a) = .Sheets(a).Name
Next
End With

Application.ScreenUpdating = False
Set sh = Worksheets.Add
With sh.Range("A1")
.Resize(UBound(T)) = Application.Transpose(T)
.Resize(UBound(T)) .PrintOut
End With
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True

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



MichD
--------------------------------------------
"michir" a écrit dans le message de groupe de discussion :


On 12 fév, 16:30, "michdenis"
Bonjour,

'--------------------------------------------
Sub test()
Dim sh As Worksheet, T(), Nb As Integer

With ThisWorkbook
Nb = .Sheets.Count
ReDim T(1 To Nb)
For a = 1 To Nb
T(a) = .Sheets(a).Name
Next
End With

Application.ScreenUpdating = False
Set sh = Worksheets.Add
With sh.Range("A1")
.Resize(UBound(T)) = Application.Transpose(T)
.PrintOut
End With
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True

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

MichD
--------------------------------------------
"michir" a crit dans le message de groupe de discussion :


Bonjour,
Je souhaiterais imprimer la liste des onglets d'un classeur, sans
passer par les macro compl mentaires que l'on trouve sur le net
Je suis avec Excel 2010
Merci tous



Bonjour MihD,
Cette macro n'imprime que le nom du premier onglet le plus à gauche.
Je cherche à obtenir la liste de tous les onglets du classeur qui en
comporte une trentaine...Il manque sans doute peu de chose
Merci à toi
Michel
michir
Le #23119351
On 12 fév, 16:52, "michdenis"
Tu as bien raison, il manque un petit bout !
;-)

'--------------------------------------------
Sub test()
Dim sh As Worksheet, T(), Nb As Integer

With ThisWorkbook
    Nb = .Sheets.Count
    ReDim T(1 To Nb)
    For a = 1 To Nb
        T(a) = .Sheets(a).Name
    Next
End With

Application.ScreenUpdating = False
Set sh = Worksheets.Add
With sh.Range("A1")
    .Resize(UBound(T)) = Application.Transpose(T)
    .Resize(UBound(T)) .PrintOut
End With
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True

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

MichD
--------------------------------------------
"michir"  a écrit dans le message de groupe de discussion :


On 12 fév, 16:30, "michdenis"








> Bonjour,

> '--------------------------------------------
> Sub test()
> Dim sh As Worksheet, T(), Nb As Integer

> With ThisWorkbook
>     Nb = .Sheets.Count
>     ReDim T(1 To Nb)
>     For a = 1 To Nb
>         T(a) = .Sheets(a).Name
>     Next
> End With

> Application.ScreenUpdating = False
> Set sh = Worksheets.Add
> With sh.Range("A1")
>     .Resize(UBound(T)) = Application.Transpose(T)
>     .PrintOut
> End With
> Application.DisplayAlerts = False
> sh.Delete
> Application.DisplayAlerts = True
> Application.ScreenUpdating = True

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

> MichD
> --------------------------------------------
> "michir"  a crit dans le message de groupe de discussion :
>

> Bonjour,
> Je souhaiterais imprimer la liste des onglets d'un classeur, sans
> passer par les macro compl mentaires que l'on trouve sur le net
> Je suis avec Excel 2010
> Merci tous

Bonjour MihD,
Cette macro n'imprime que le nom du premier onglet le plus à gauche.
Je cherche à obtenir la liste de tous les onglets du classeur qui en
comporte une trentaine...Il manque sans doute peu de chose
Merci à toi
Michel



Re,
c'est nickel chrome, sauf que les noms des mes onglets étant un peu
longs, ils sont rognés à l'impression
Peut être peut on ajouter une commande d'ajustement à la longueur des
noms des onglets ?
Michel
michdenis
Le #23119991
Sub test()
Dim sh As Worksheet, T(), Nb As Integer

With ThisWorkbook
Nb = .Sheets.Count
ReDim T(1 To Nb)
For a = 1 To Nb
T(a) = .Sheets(a).Name
Next
End With

Application.ScreenUpdating = False
Set sh = Worksheets.Add
With sh.Range("A1")
.EntireColumn.AutoFit
.Resize(UBound(T)) = Application.Transpose(T)
.Resize(UBound(T)).PrintOut
End With
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True

End Sub
michir
Le #23120101
On 12 fév, 19:48, "michdenis"
Sub test()
Dim sh As Worksheet, T(), Nb As Integer

With ThisWorkbook
    Nb = .Sheets.Count
    ReDim T(1 To Nb)
    For a = 1 To Nb
        T(a) = .Sheets(a).Name
    Next
End With

Application.ScreenUpdating = False
Set sh = Worksheets.Add
With sh.Range("A1")
    .EntireColumn.AutoFit
    .Resize(UBound(T)) = Application.Transpose(T)
    .Resize(UBound(T)).PrintOut
End With
Application.DisplayAlerts = False
sh.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True

End Sub



Re,
Ok, Merci à toi MichD
Michel
Publicité
Poster une réponse
Anonyme