Printing a List of Formulas

S

sandi.cox

How do I print just a list of the formulas that I used in
a document? I know how to make them show on the screen
and print them, but remember that years ago I could print
a separate list of them.
 
J

Jim Cone

Sandi,

You will have to run a macro to list all formulas (in a workbook) in a column on a separate sheet.
I can post some code, that I have, if that would meet your needs.

Regards,
Jim Cone
San Francisco, CA
 
G

Gord Dibben

Sandi

Hit CRTL + `(backquote above TAB key) to view formulas and print if you wish,
which you say you don't.

I find this rather messy and prefer to use John Walkenbach's code to place
formulas, addresses and results on a separate sheet for printing.

If not sure what to do with the code below, post back for more assistance or
see David McRitchie's Getting Started with Macros.

http://www.mvps.org/dmcritchie/excel/getstarted.htm

Sub ListFormulas()
'from John Walkenbach
Dim FormulaCells As Range, cell As Range
Dim FormulaSheet As Worksheet
Dim Row As Integer
Dim ws As Worksheet
' Create a Range object for all formula cells
On Error Resume Next
Set FormulaCells = Range("A1").SpecialCells(xlFormulas, 23)

' Exit if no formulas are found
If FormulaCells Is Nothing Then
MsgBox "No Formulas."
Exit Sub
End If

' Add a new worksheet
Application.ScreenUpdating = False
Set FormulaSheet = ActiveWorkbook.Worksheets.Add
FormulaSheet.Name = "Formulas in " & FormulaCells.Parent.Name

' Set up the column headings
With FormulaSheet
Range("A1") = "Address"
Range("B1") = "Formula"
Range("C1") = "Value"
Range("A1:C1").Font.Bold = True
End With

' Process each formula
Row = 2
For Each cell In FormulaCells
Application.StatusBar = Format((Row - 1) / FormulaCells.Count, "0%")
With FormulaSheet
Cells(Row, 1) = cell.Address _
(RowAbsolute:=False, ColumnAbsolute:=False)
Cells(Row, 2) = " " & cell.Formula
Cells(Row, 3) = cell.Value
Row = Row + 1
End With
Next cell

' Adjust column widths
FormulaSheet.Columns("A:C").Cells.WrapText = True ''AutoFit
Application.StatusBar = False
End Sub

Gord Dibben Excel MVP
 
J

Jim Cone

Hi,Gord,

It depends on what Sandi means by "document"...
JW's code only prints formulas from one worksheet, not the workbook.
It is also going to blow up in very large spreadsheets. (Dim Row as Integer)

Regards,
Jim Cone
San Francisco, CA
 
G

Gord Dibben

Jim

Point taken, thanks.

Gord

Hi,Gord,

It depends on what Sandi means by "document"...
JW's code only prints formulas from one worksheet, not the workbook.
It is also going to blow up in very large spreadsheets. (Dim Row as Integer)

Regards,
Jim Cone
San Francisco, CA
 
Top