View Single Post
  #8   Report Post  
Posted to microsoft.public.excel.programming
Brian Brian is offline
external usenet poster
 
Posts: 683
Default Update Headers & Footnotes from User Form

I got it to work perfect, except for the Line spacing.
Town: TEO No: Page 1 of ?

Office: Supplier Order No: Appendix No:


It needs to look like this:
Town: TEO No: Page 1 of ?
Office: Supplier Order No: Appendix No:

I recorded 2 macro's one with the spacing and 1 removing the spacing. Then I
printed them and compared them to see what was different. They are both
exactly same. I need to get rid of that extra line spacing.






"JLGWhiz" wrote:

Brian, you cannot put a Sub within a Sub. It will not work.

Private Sub Update_Engineer_Spec_10_Click()

'Update Header Footnote Information
Sub DynamicHeader() '<<<This line will cause an error
'because you already have a
title
'line for the click event.

Comment the second title line out and see if it runs.


"Brian" wrote in message
...
The Code is Located under the "Private Sub
Update_Engineer_Spec_10_Click()"
This is a control Button for update the Workbook. I put the cade a the end
of that code on the user form.

Ok, I did reference the Text Boxes Correctly, like "Me.City_1.Value".
"Me" = The User Form
"City_1" = The Text Box in the User Form
"Value" = A varible Input from user

'Update Engineering Spec Control Button(Sheet 1)
Private Sub Update_Engineer_Spec_10_Click()

'Update Header Footnote Information
Sub DynamicHeader()

Dim sh As Integer

For sh = 1 To Sheets.Count
With Sheets(sh).PageSetup
.LeftHeader = "Town:" & Me.City_1.Value & vbNewLine _
& "Office:" & Me.Office_1.Value

.CenterHeader = "TEO No:" & Me.TEO_No_1.Value & vbNewLine _
& "Supplier Order No:" & Me.CES_No_1.Value

.RightHeader = "Page &P of &N" & vbNewLine _
& "Appendix No:" & Me.TEO_Appx_No_2.Value

.LeftFooter = "Left Footer if desired"

.CenterFooter = "Center Footer if desired"

.RightFooter = "Right Footer if desired"

.TopMargin = Application.InchesToPoints(0.25)

End With
Next sh

End Sub

I am still learning this VBA Stuff.


"Ryan H" wrote:

Where is this code located? If its located in a Standard Module then you
need to use your Userform name like Userform1 as a reference instead of
Me.

I would also recommend you use the For Each...Next Loop to loop thru your
worksheets instead for the For...Next Loop. For Each is used mainly for
objects.

So your code would look like this:

'Update Header Footnote Information
Sub DynamicHeader()

Dim sh As Worksheet

For Each sh In WorkSheets
With sh.PageSetup
.LeftHeader = "Town:" & Me.City_1.Value & vbNewLine _
& "Office:" & Me.Office_1.Value

.CenterHeader = "TEO No:" & Me.TEO_No_1.Value & vbNewLine _
& "Supplier Order No:" & Me.CES_No_1.Value

.RightHeader = "Page &P of &N" & vbNewLine _
& "Appendix No:" & Me.TEO_Appx_No_2.Value

.LeftFooter = "Left Footer if desired"

.CenterFooter = "Center Footer if desired"

.RightFooter = "Right Footer if desired"

.TopMargin = Application.InchesToPoints(0.25)

End With
Next sh

End Sub

Hope this helps! If so, click "YES" below.
--
Cheers,
Ryan


"Brian" wrote:

I am trying to get the Header/Footnote to update on all sheets in a
Workbook
without changing the page formatting. Some of the Sheets are Portrait
and
some are landscape. I have a User Form that already has the data in
some Text
Boxes.

There is a Control Button (Update_Engineer_Spec_10) that when pushed
takes
the information on the User Form and Updates the Workbook, but I would
like
to Update the Header / Footnot as well.

The Header was supposed to look like this.
Town: TEO No: Page 1 of ?
Office: Supplier Order No: Appendix No:

Town = City_1
Office = Office_1
TEO No = TEO_No_1
Supplier Order No = CES_No_1
Appendix No = TEO_Appx_No_2

Here is the code I have, but it dosen't seem to work. The truth is
nothing
happens.

'Update Header Footnote Information
Sub DynamicHeader()

Dim sh As Integer

For sh = 1 To Sheets.Count
With Sheets(sh).PageSetup
.LeftHeader = "Town:" & Me.City_1.Value & vbNewLine _
& "Office:" & Me.Office_1.Value

.CenterHeader = "TEO No:" & Me.TEO_No_1.Value & vbNewLine _
& "Supplier Order No:" & Me.CES_No_1.Value

.RightHeader = "Page &P of &N" & vbNewLine _
& "Appendix No:" & Me.TEO_Appx_No_2.Value

.LeftFooter = "Left Footer if desired"

.CenterFooter = "Center Footer if desired"

.RightFooter = "Right Footer if desired"

.TopMargin = Application.InchesToPoints(0.25)

End With
Next sh

End Sub

Thanks



.