Vba 如何选择单元格并合并它们?

Vba 如何选择单元格并合并它们?,vba,excel,Vba,Excel,我是VBA新手,正在做一些编码来从表单生成重复的表。 但我坚持选择一个部分,我需要选择几个单元格并合并它们。合并后,我仍然需要将它们打包。 有人能帮忙吗 For Counter = 1 To Me.Copies.Value RowCount = Worksheets("Sheet1").Range("A1").CurrentRegion.Rows.Count With Worksheets("Sheet1").Range("A1") .Offset(RowCount, 0).Value = M

我是VBA新手,正在做一些编码来从表单生成重复的表。 但我坚持选择一个部分,我需要选择几个单元格并合并它们。合并后,我仍然需要将它们打包。 有人能帮忙吗

For Counter = 1 To Me.Copies.Value

RowCount = Worksheets("Sheet1").Range("A1").CurrentRegion.Rows.Count
With Worksheets("Sheet1").Range("A1")
.Offset(RowCount, 0).Value = Me.Location.Value
.Offset(RowCount, 0).Select
Call Macro1
.Offset(RowCount, 1).Value = StEt
.Offset(RowCount, 1).Select
Call Macro1
.Offset(RowCount, 2).Value = Me.Supervisor.Value
.Offset(RowCount, 2).Select
Call Macro1
.Offset(RowCount + 1, 0).Value = Counter
.Offset(RowCount + 1, 0).Select
Call Macro1
.Offset(RowCount + 1, 1).Value = Me.ExactLoc.Value
.Offset(RowCount + 1, 1).Select
Call Macro1
.Offset(RowCount + 1, 2).Value = Me.SupNum.Value
.Offset(RowCount + 1, 2).Select
Call Macro1
.Offset(RowCount + 2, 0).Value = Me.AddMsg.Value
'this is where I need the cell and 2 more other cell together for a merge
End With
Next Counter
这些代码基于要在表单上单击的按钮,表单中填写了所有值。 代码会将文本字段中的值复制到需要生成的副本数量。

要合并单元格

Range("C16:E17").Merge
有几件事你会发现,合并的单元格最好在Excel中单独使用,尤其是在vba中,因为你在尝试做某些事情时会出错

要记住的另一件事是,我从宏记录器中获得的上述代码有时会有所帮助。

这应该是可行的

Range("C16:C17").Select
Selection.Merge
With.Selection.Borders(xlEdgeLeft)
.LineStyle=xlContinuous
.Weight=xlMedium
End With
With.Selection.Borders(xlEdgeTop)
.LineStyle=xlContinuous
.Weight=xlMedium
End With
With.Selection.Borders(xlEdgeRight)
.LineStyle=xlContinuous
.Weight=xlMedium
End With
With.Selection.Borders(xlEdgeBottom)
.LineStyle=xlContinuous
.Weight=xlMedium
End With

合并的单元格很难处理,可能会导致很多问题。为什么不使用不同的技术?您计划如何选择它们?如果你能创建一个
范围
-对象,你只需设置
.MergeCells=True
我的问题是我不知道如何选择单元格。我需要一个关于如何选择单元格而不是如何合并的答案。你不需要选择单元格(选择单元格实际上是一种效率很低的方法),可以从范围对象执行任何操作。在代码中,您可以执行诸如range(.offset(Rowcount+3,0).address、.offset(Rowcount+4,0).address.merge之类的操作。我希望这对@i-link有所帮助