在Excel中合并单元格

时间:2015-03-26 11:46:57

标签: excel vba excel-vba ms-access access-vba

我正在使用vba代码生成excel报告。我是新手。只是想知道我是否需要合并任何特定范围的列/单元格,但不确定它们从哪里开始,但总是在5个单元格之后结束。

以下是我的代码:

ShtReport.Cells(7, col + 1).Value = RS("Fund")
从上面的行

,在第7行设置值,让col值为6然后在line上面设置第7行第7列的值。但我需要的是它应该合并第7到第12个细胞及其文本。

请帮我解决这个问题。

3 个答案:

答案 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