0
我有以下VBA代码以书签格式在代码位置插入日期。它每次打开文件时都插入日期而不删除旧的Boookmark文本,所以我在代码的顶部添加了删除文本,但现在它删除了格式,并且它插入了文本是否有保留格式的方法?Word(2010)更新日期并使用宏保持格式化
Sub AutoOpen()
'
' AutoOpen Macro
'
'
ActiveDocument.Bookmarks("MyDate").Range.Delete
ActiveDocument.Bookmarks("MyDate1").Range.Delete
ActiveDocument.Bookmarks("MyDate2").Range.Delete
ActiveDocument.Bookmarks("MyDate3").Range.Delete
ActiveDocument.Bookmarks("MyDate4").Range.Delete
ActiveDocument.Bookmarks("MyDate5").Range.Delete
ActiveDocument.Bookmarks("MyDate6").Range.Delete
With ActiveDocument.Bookmarks("MyDate").Range
.InsertBefore Format(Date + 1, "dddd dd mmmm yyyy")
End With
With ActiveDocument.Bookmarks("MyDate1").Range
.InsertBefore Format(Date + 2, "dddd dd mmmm yyyy")
End With
With ActiveDocument.Bookmarks("MyDate2").Range
.InsertBefore Format(Date + 3, "dddd dd mmmm yyyy")
End With
With ActiveDocument.Bookmarks("MyDate3").Range
.InsertBefore Format(Date + 4, "dddd dd mmmm yyyy")
End With
With ActiveDocument.Bookmarks("MyDate4").Range
.InsertBefore Format(Date + 5, "dddd dd mmmm yyyy")
End With
With ActiveDocument.Bookmarks("MyDate5").Range
.InsertBefore Format(Date + 6, "dddd dd mmmm yyyy")
End With
With ActiveDocument.Bookmarks("MyDate6").Range
.InsertBefore Format(Date + 7, "dddd dd mmmm yyyy")
End With
End Sub
代码的顶部代码会删除书签,因此您无法在下面运行“With ...”部分。我错过了什么,或者你错过了一部分代码? – 2013-05-02 12:44:24
KazJaw,代码按原样运行。书签保持不变,Withs的输出工作,并按照每个书签所定义的位置代码格式输出日期。以上是我在文档中的完整代码。 – RebelCom 2013-05-03 09:24:10