Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #6  
Old 11-20-2013, 01:01 PM
gmaxey gmaxey is offline VBA code to align watermarks Windows 7 32bit VBA code to align watermarks Office 2010 (Version 14.0)
Expert
 
Join Date: May 2010
Location: Brasstown, NC
Posts: 1,617
gmaxey is just really nicegmaxey is just really nicegmaxey is just really nicegmaxey is just really nicegmaxey is just really nice
Default

Catty,

For Each loops when dealing with objects and deleting is often problematic. Also before inserting watermarks you should ensure the previous ones are deleted first by adding a call to your delete macro:
Code:
Sub ScratchMacro() 
   'A basic Word macro coded by Greg Maxey
  Dim Shp As Shape, HdFt As HeaderFooter 
  DeleteWatermark 
  With ActiveDocument 
     'Add the watermark To each header In the first Section
    With .Sections.First 
      For Each HdFt In .Headers 
        Set Shp = HdFt.Shapes.AddTextEffect(msoTextEffect1, _ 
        "CONFIDENTIAL", "Arial Narrow", 38, False, False, 0, 0) 
        With Shp 
          .Name = "PowerPlusWaterMarkObject" & Format(Now, "YYMMDD") & Format(HdFt.Index, "00") 
          .TextEffect.NormalizedHeight = False 
          .Line.Visible = False 
          .Fill.Visible = True 
          .Fill.Solid 
          .Fill.ForeColor.RGB = RGB(192, 192, 192) 
          .Fill.Transparency = 0.5 
          .Rotation = 315 
          .LockAspectRatio = True 
          .Height = InchesToPoints(3.29) 
          .Width = InchesToPoints(6.85) 
          .WrapFormat.AllowOverlap = True 
          .WrapFormat.Side = wdWrapNone 
          .WrapFormat.Type = 3 
          .RelativeHorizontalPosition = wdRelativeVerticalPositionPage 
          .RelativeVerticalPosition = wdRelativeVerticalPositionPage 
          .Left = wdShapeCenter 
          .Top = wdShapeCenter 
        End With 
        .Range.FormattedText.ShowAll = False 
      Next 
    End With 
    With .ActiveWindow.View 
      .ShowMarkupAreaHighlight = False 
      .ShowComments = False 
      .ShowRevisionsAndComments = False 
    End With 
    .FormattingShowClear = True 
  End With 
  Set Shp = Nothing 
End Sub 
 
Sub DeleteWatermark() 
  Dim oSection As Section 
  Dim oHeader As HeaderFooter 
  Dim oShape As Shape 
  Dim lngIndex As Long 
  For Each oSection In ActiveDocument.Sections 
    For lngIndex = 1 To 3 
      Set oHeader = oSection.Headers(lngIndex) 
      For Each oShape In oHeader.Range.ShapeRange 
        If oShape.Type = 15 Then oShape.Delete 
      Next oShape 
    Next lngIndex 
  Next 
  oSection 
End Sub
__________________
Greg Maxey
Please visit my web site at http://www.gregmaxey.com/

Last edited by macropod; 11-20-2013 at 01:55 PM. Reason: Added code tags & formatting
Reply With Quote
 



Similar Threads
Thread Thread Starter Forum Replies Last Post
How to align texts so they all end at the same line patehi Word 3 05-25-2013 11:47 PM
VBA code to align watermarks Resize and align AndyDDUK PowerPoint 9 11-09-2012 05:23 AM
VBA code to align watermarks Clipart and Watermarks Maureen Office 3 09-30-2011 02:53 AM
Watermarks on the web David S Word 0 07-28-2011 07:54 AM
Question on watermarks kknutson Word 0 04-26-2007 04:12 PM

Other Forums: Access Forums

All times are GMT -7. The time now is 04:56 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft