Sub ImprimerFormules()
Dim F As Worksheet, c As Range, lig As Long
Set F = ActiveSheet 'ou Feuil1, à voir
Application.ScreenUpdating = False
Application.DisplayAlerts = False
With Sheets.Add 'feuille auxiliaire
.[A1] = "Cellule": .[B1] = "Formule"
.[A1:B1].Font.Bold = True 'gras
.Columns(2).NumberFormat = "@" 'format Texte
lig = 2
For Each c In F.UsedRange
If c.HasFormula Then
.Cells(lig, 1) = c.Address(0, 0)
.Cells(lig, 2) = c.FormulaLocal 'copie la formule
lig = lig + 1
End If
Next
.Columns.AutoFit 'ajuste les largeurs des colonnes
.PageSetup.FitToPagesWide = 1 '1 page en largeur
.PageSetup.FitToPagesTall = 1 'facultatif, 1 page en hauteur
Application.ScreenUpdating = True
Application.Wait Now + 5 / 86400 'facultatif, 5 secondes pour voir...
.PrintOut
.Delete
End With
End Sub