请问EXCEL用VBA怎么写这段代码。自动向下合并空白单元格。

如题。如何用VBA向下合并单元格,尽量不用数组吧。。数组现在对我来说,理解太累了。。。。注明,我的表格是变动的,这个只是一个示范,它是从另一个表按照要求提取出来的、... 如题。如何用VBA向下合并单元格,尽量不用数组吧。。数组现在对我来说,理解太累了。。。。注明,我的表格是变动的,这个只是一个示范,它是从另一个表按照要求提取出来的、 展开
 我来答
一年孤独58aa
推荐于2017-09-08 · TA获得超过1404个赞
知道小有建树答主
回答量:592
采纳率:92%
帮助的人:437万
展开全部
Sub SpecialMerge()
    Dim M As Long, N As Long
    Dim i As Long, j As Long
    Dim k1 As Long, k2 As Long
    Application.DisplayAlerts = False
    k1 = 1
    k2 = 1
    With Selection
        M = .Columns.Count
        N = .Rows.Count
        For j = 1 To M
            For i = 1 To N
                If .Cells(i, j) = "" Then
                    k2 = i
                Else
                    Range(.Cells(k1, j), .Cells(k2, j)).Merge
                    k1 = i
                    k2 = i
                End If
            Next i
            Range(.Cells(k1, j), .Cells(k2, j)).Merge
            k1 = 1
            k2 = 1
        Next j
    End With
    Application.DisplayAlerts = True
End Sub

操作方法:选中要操作的数据区域,运行宏即可。见示例文件。

平阳虎01
高粉答主

2014-04-23 · 每个回答都超有意思的
知道大有可为答主
回答量:3.7万
采纳率:75%
帮助的人:8588万
展开全部
Sub 合并单元格()
Application.DisplayAlerts = False
k = ActiveSheet.UsedRange.Rows.Count
For j = 1 To 2
    For i = k To 1 Step -1
        If Cells(i, j) = "" Then Range(Cells(i - 1, j), Cells(i, j)).Merge
    Next
Next
Application.DisplayAlerts = True
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式