我正在努力解决如何修复此代码的问题。它的Word 2007 VBA
它错误,因为表格的单元格是完整的,而不是我认为的内容。 目前它是
With ActiveDocument.Tables(2)
.Rows.Add BeforeRow:=ActiveDocument.Tables(2).Rows(2)
.Rows(2).Range.Shading.BackgroundPatternColor = wdColorAutomatic
.Rows(2).Range.Borders(wdBorderBottom).LineStyle = wdLineStyleDot
.Cell(2, 2).Range.InsertDateTime "yy.MM.dd", False, wdEnglishUK, wdCalendarWestern, False
End With
这会在第一个下面创建一个新行,并将其格式化为看起来不错但在尝试输入日期时出错。 我尝试在启用键盘的宏中使用代码,当我单击单元格时它似乎工作但是当我突出显示整个单元格时会出现相同的错误(这导致我怀疑这是问题)
有什么想法吗?
答案 0 :(得分:0)
这对我有用:
Sub tt()
Dim rng As Range
With ActiveDocument.Tables(2)
.Rows.Add BeforeRow:=.Rows(2)
With .Rows(2).Range
.Shading.BackgroundPatternColor = wdColorAutomatic
.Borders(wdBorderBottom).LineStyle = wdLineStyleDot
End With
Set rng = .Cell(2, 2).Range
rng.Collapse wdCollapseStart
rng.InsertDateTime "yy.MM.dd" ', False, wdEnglishUK, wdCalendarWestern, False
End With
End Sub
与Excel相比,我发现Word范围难以使用。特别是Word表格单元格都附加了一个“额外”字符(如果你打开隐藏格式,你可以看到它),你必须解决这个问题。
答案 1 :(得分:0)
.Cell(2, 2).Range.text = format(date, "yy.MM.dd")
这将给出一个月份的数字 - 如果你想要3个字母使用3 m&#39>