【VBA案例017】合并单元格

  1. 方法一:
  2. 方法二:

大家好!

合并单元格是经常遇到的操作,在WPS中,提供了非常好用的快捷按钮。遗憾的是Excel里并没有这个一键合并单元格的功能。

今天分享用VBA合并单元格的两个最常用的方法,如果你是WPS用户,虽然不需要代码,但是编程的思路,还是有参考价值的。

以下是VBA代码。详细解析请看文末的视频。

方法一:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub union并集函数()

Dim i
Dim rng As Range

Set rng = [a2]

Application.DisplayAlerts = False
For i = 2 To 20
If Range("a" & i + 1) = Range("a" & i) Then
Set rng = Union(rng, Range("a" & i + 1))
Else
rng.Merge
Set rng = Range("a" & i + 1)
End If
Next i
Application.DisplayAlerts = True

End Sub

方法二:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Sub 循环数组()

Dim i, j, ar
Dim start_row, end_row

ar = [a1:a20]
start_row = 2

Application.DisplayAlerts = False
For i = 2 To UBound(ar)
For j = i + 1 To UBound(ar)
If ar(j, 1) = ar(i, 1) Then
end_row = j
Else
end_row = j - 1
Exit For
End If
Next j
Range("a" & start_row & ":a" & end_row).Merge
start_row = j
i = start_row - 1
Next i
Application.DisplayAlerts = True

End Sub

原始链接


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 richffan@outlook.com

文章标题:【VBA案例017】合并单元格

字数:274

本文作者:Rich Fan

发布时间:2023-10-23, 00:00:00

最后更新:2024-02-27, 08:17:39

原始链接:http://fanrich.github.io/2023/10/22/VBA/VBA%E6%A1%88%E5%88%97/%E3%80%90VBA%E6%A1%88%E4%BE%8B017%E3%80%91%E5%90%88%E5%B9%B6%E5%8D%95%E5%85%83%E6%A0%BC/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。