【发布时间】:2019-10-31 12:30:13
【问题描述】:
我正在从 Access 创建一个 Excel 工作表,我需要从 Access VBA 格式化工作表,但是当我尝试这段代码时,它返回错误 1004:
Set rng = .Range("A2:E" & LastRow & "," & "J2:M" & LastRow)
With rng
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlVAlignCenter
End With
如果我对每个范围都进行尝试:
Set rng = .Range("A2:A" & LastRow)
我在 Excel 电子表格上有这段完全相同的代码,它的工作原理很吸引人,但也许从 Access 中我应该使用另一种语法:
With DestWB.Sheets(strSheetName)
.Range("B2:B" & MyLastRow - 3 & "," & "D2:D" & MyLastRow - 3 & "," & "H2:H" & MyLastRow - 3 & "," & "I2:I" & MyLastRow - 3).HorizontalAlignment = xlCenter
End With
有人可以指出我如何将格式应用于与此类似的非连续范围吗?
【问题讨论】:
-
你试图用那个“rng”变量做什么操作?某些操作不适用于组合(区域)范围,即 rng.cut 等。因此在这种情况下,您可以按照@mdelapena 的建议执行不同的范围变量
-
简单的事情:以 rng .HorizontalAlignment = xlCenter .VerticalAlignment = xlVAlignCenter 结束
-
你能edit你的问题更多的代码吗?
-
Intersect在这里可能有用。 -
我已经在你问 BigBen 的问题中包含了我的代码。