Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Automate adding code

I have a situation where I need to add a BeforePrint event
procedure in hundreds of Excel2000 workbooks.

(From a KB article:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
ActiveSheet.PageSetup.LeftFooter = ThisWorkbook.FullName
End Sub
)

I need some pointers into help so I can find the
objects/methods that I can use to automate inserting those
lines of code into each .xls file. In Access, it's the
Module object and its InsertLines method, but I can't seem
to find the analogous items in Excel.
--
Marsh
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default Automate adding code

This may look a primitive way, but it will work!


Sub TryThis()
Dim Filename As Variant
Dim X As Long
Dim Wkb As Workbook
Dim Sht As Object
'Gets the File name
Filename = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.Xls),*.Xls", _
Title:="Chose your Excel File/s!", _
MultiSelect:=True)

Application.ScreenUpdating = False
'Exits if you cancel
If Not IsArray(Filename) Then
MsgBox "No File/s where selected"
Exit Sub
End If
For X = LBound(Filename) To UBound(Filename)
Set Wkb = Workbooks.Open(Filename:=Filename(X))
For Each Sht In ActiveWorkbook.Sheets
Sht.PageSetup.LeftHeader = ThisWorkbook.FullName
Next Sht
Wkb.Save
Wkb.Close
Next
End Su

--
Message posted from http://www.ExcelForum.com

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Automate adding code

Thanks for the idea, I guess I hadn't thought of setting
every sheet's property, I'll have to check to see if that's
acceptable. It might not be because it would require all
future sheets to be set manually. Hmmm, It would have to
be done manually for new workbooks anyway . . . thinking ...

Since you didn't mention anything about automating the code
insertion process, should I conclude that Excel doesn't
provide a mechanism to do that?
--
Marsh



Andoni wrote:

This may look a primitive way, but it will work!


Sub TryThis()
Dim Filename As Variant
Dim X As Long
Dim Wkb As Workbook
Dim Sht As Object
'Gets the File name
Filename = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.Xls),*.Xls", _
Title:="Chose your Excel File/s!", _
MultiSelect:=True)

Application.ScreenUpdating = False
'Exits if you cancel
If Not IsArray(Filename) Then
MsgBox "No File/s where selected"
Exit Sub
End If
For X = LBound(Filename) To UBound(Filename)
Set Wkb = Workbooks.Open(Filename:=Filename(X))
For Each Sht In ActiveWorkbook.Sheets
Sht.PageSetup.LeftHeader = ThisWorkbook.FullName
Next Sht
Wkb.Save
Wkb.Close
Next
End Sub


  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,302
Default Automate adding code

Hi Marshall,

Since you didn't mention anything about automating the code
insertion process, should I conclude that Excel doesn't
provide a mechanism to do that?


Go to Chip Pearson's web site and see:

http://www.cpearson.com/excel/vbe.htm

---
Regards,
Norman



"Marshall Barton" wrote in message
...
Thanks for the idea, I guess I hadn't thought of setting
every sheet's property, I'll have to check to see if that's
acceptable. It might not be because it would require all
future sheets to be set manually. Hmmm, It would have to
be done manually for new workbooks anyway . . . thinking ...

Since you didn't mention anything about automating the code
insertion process, should I conclude that Excel doesn't
provide a mechanism to do that?
--
Marsh



Andoni wrote:

This may look a primitive way, but it will work!


Sub TryThis()
Dim Filename As Variant
Dim X As Long
Dim Wkb As Workbook
Dim Sht As Object
'Gets the File name
Filename = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.Xls),*.Xls", _
Title:="Chose your Excel File/s!", _
MultiSelect:=True)

Application.ScreenUpdating = False
'Exits if you cancel
If Not IsArray(Filename) Then
MsgBox "No File/s where selected"
Exit Sub
End If
For X = LBound(Filename) To UBound(Filename)
Set Wkb = Workbooks.Open(Filename:=Filename(X))
For Each Sht In ActiveWorkbook.Sheets
Sht.PageSetup.LeftHeader = ThisWorkbook.FullName
Next Sht
Wkb.Save
Wkb.Close
Next
End Sub




  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Automate adding code

Thanks for the link Norman, Chip's article is outstanding.

His reminder to use the Extensibility library was the real
key, but what a relief that his article made the Help file
unnecessary.

The code insertion stuff is now working and all I have to do
is figure out if that's really the way I want to pursue
this.
--
Marsh



Norman Jones wrote:

Hi Marshall,

Since you didn't mention anything about automating the code
insertion process, should I conclude that Excel doesn't
provide a mechanism to do that?


Go to Chip Pearson's web site and see:

http://www.cpearson.com/excel/vbe.htm

---
Regards,
Norman



"Marshall Barton" wrote in message
.. .
Thanks for the idea, I guess I hadn't thought of setting
every sheet's property, I'll have to check to see if that's
acceptable. It might not be because it would require all
future sheets to be set manually. Hmmm, It would have to
be done manually for new workbooks anyway . . . thinking ...

Since you didn't mention anything about automating the code
insertion process, should I conclude that Excel doesn't
provide a mechanism to do that?
--
Marsh



Andoni wrote:

This may look a primitive way, but it will work!


Sub TryThis()
Dim Filename As Variant
Dim X As Long
Dim Wkb As Workbook
Dim Sht As Object
'Gets the File name
Filename = Application.GetOpenFilename( _
FileFilter:="Excel Files (*.Xls),*.Xls", _
Title:="Chose your Excel File/s!", _
MultiSelect:=True)

Application.ScreenUpdating = False
'Exits if you cancel
If Not IsArray(Filename) Then
MsgBox "No File/s where selected"
Exit Sub
End If
For X = LBound(Filename) To UBound(Filename)
Set Wkb = Workbooks.Open(Filename:=Filename(X))
For Each Sht In ActiveWorkbook.Sheets
Sht.PageSetup.LeftHeader = ThisWorkbook.FullName
Next Sht
Wkb.Save
Wkb.Close
Next
End Sub




Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
automate adding sheets Brian Excel Discussion (Misc queries) 6 June 20th 08 12:57 AM
Excel---how do i automate adding a suffix to text? Peter-NYC Excel Discussion (Misc queries) 1 January 29th 08 05:21 PM
use VB code IF to automate filling in 11 columns smart.daisy Excel Discussion (Misc queries) 1 May 29th 06 09:08 PM
Automate this code hotherps[_81_] Excel Programming 4 July 23rd 04 12:40 AM
Way to automate adding pictures in a series in Excel? MS[_4_] Excel Programming 5 November 3rd 03 01:01 AM


All times are GMT +1. The time now is 06:08 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"