我正在使用vba代码生成excel报告。我是新手。只是想知道我是否需要合并任何特定范围的列/单元格,但不确定它们从哪里开始,但总是在5个单元格之后结束。
以下是我的代码:
ShtReport.Cells(7, col + 1).Value = RS("Fund")
从上面的行,在第7行设置值,让col值为6然后在line上面设置第7行第7列的值。但我需要的是它应该合并第7到第12个细胞及其文本。
请帮我解决这个问题。
答案 0 :(得分:0)
请尝试以下代码。
这将水平合并5个单元格。您可以将7更改为行号,并在第二部分中添加5,就像我在下面添加了6以垂直合并
Col + 6 =确保将Col + 1右侧的 5个单元合并在一起
Range(Cells(7, Col + 1), Cells(7, Col + 6)).Merge
答案 1 :(得分:0)
您可以通过引用同一工作表中的两个单元格来创建多单元格范围。
range(ShtReport.Cells(7, col + 1), ShtReport.Cells(7, col + 6))
要合并,请调用.merge
range(ShtReport.Cells(7, col + 1), ShtReport.Cells(7, col + 6)).merge
如果您希望获得更多花哨并使用相同的范围进行更多格式化,那么您可以使用with块并使其看起来更整洁。
with range(ShtReport.Cells(7, col + 1), ShtReport.Cells(7, col + 6))
.merge
.HorizontalAlignment= xlCenter
end with
答案 2 :(得分:0)
您可以使用Resize()
方法将当前使用的范围扩展到设定数量的行/列,如下所示:
ShtReport.Cells(7, col + 1).Resize(1, 6).Value = RS("Fund")
'// Resize(1, 6) = Resize to 1 row and 6 columns