![]() |
|
#1
|
||||
|
||||
![]()
You don't need the loop
Code:
Function ChangeLogo(oDoc As Document) As Boolean Dim oSection As Section Dim oHeader As HeaderFooter Dim oShape As Shape Const strImage As String = "D:\My Documents\My Pictures\GMLogo.png" '"C:\lh.png" On Error GoTo Err_Handler Set oSection = oDoc.Sections.First ' set first section header type - may conflict with other format desires... oSection.PageSetup.DifferentFirstPageHeaderFooter = True ' put logo on first page header Set oHeader = oSection.Headers(wdHeaderFooterFirstPage) Set oShape = oHeader.Shapes.AddPicture(FileName:=strImage) With oShape .RelativeHorizontalPosition = wdRelativeHorizontalPositionColumn .RelativeVerticalPosition = wdRelativeVerticalPositionParagraph .Left = CentimetersToPoints(-1) .Top = CentimetersToPoints(-0.07) End With ChangeLogo = True lbl_Exit: Set oSection = Nothing Set oHeader = Nothing Set oShape = Nothing Exit Function Err_Handler: ChangeLogo = False Resume lbl_Exit End Function
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
#2
|
|||
|
|||
![]()
Awesome, I appreciate it...especially coming from you!
I did run into an issue where some of the smaller docs of 2 or 3 pages didn't have any sections at all, so I though to run a macro that goes through all of the documents and puts section breaks at the end of every page. It shouldn't do any harm if they already have section breaks should it? I will say when running this section break macro, I sometimes run into "object refers to a framed paragraph" error that kills the run and I have to manually edit that document. Code:
Sub InsertBreaksIntoMultiDoc() Dim StrFolder As String Dim strFile As String Dim objDoc As Document Dim dlgFile As FileDialog Dim nTotalPageNumber As Integer Set dlgFile = Application.FileDialog(msoFileDialogFolderPicker) With dlgFile If .Show = -1 Then StrFolder = .SelectedItems(1) & "\" Else MsgBox "No folder is selected! Please select the target folder." Exit Sub End If End With strFile = Dir(StrFolder & "*.docx", vbNormal) While strFile <> "" Set objDoc = Documents.Open(FileName:=StrFolder & strFile) For nTotalPageNumber = 1 To Selection.Information(wdNumberOfPagesInDocument) Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=nTotalPageNumber Application.Browser.Target = wdBrowsePage ActiveDocument.Bookmarks("\page").Range.Select Selection.Collapse wdCollapseEnd Selection.InsertBreak Type:=wdSectionBreakContinuous Next objDoc.Save objDoc.Close strFile = Dir() Wend End Sub |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Change Header in multiple Docs | ambojoy | Word | 1 | 07-03-2020 07:10 PM |
![]() |
MimiCush | Word | 4 | 03-26-2018 01:07 PM |
![]() |
ika | Word VBA | 15 | 10-20-2016 11:08 PM |
![]() |
youseeme | Word VBA | 9 | 09-16-2016 05:25 AM |
Google Docs Power Point Short cuts / Insert Image etc | Rado | PowerPoint | 4 | 04-11-2014 03:50 AM |