如图,在EXCEL中,让单元格元中的数字自动连线,这种VBA怎么写啊

 我来答
hbpaoxiao2
2016-03-11 · TA获得超过2896个赞
知道大有可为答主
回答量:1962
采纳率:72%
帮助的人:844万
展开全部
Sub test()
    Dim rng As Range
    Dim r, col, n
    Dim brr()
    With ActiveSheet
        Set rng = .Range("B2:L100") '把这里改成你实际对应的区域
        r = rng.Cells(1, 1).Row: col = rng.Cells(1, 1).Column
        arr = .[b2].CurrentRegion
        ReDim brr(1 To UBound(arr, 1) * UBound(arr, 2), 1 To 2)
        n = 1
        For i = LBound(arr, 1) To UBound(arr, 1)
            For j = LBound(arr, 2) To UBound(arr, 2)
                With .Cells(i + r - 1, j + col - 1)
                    If .Value <> "" Then
                        brr(n, 1) = .Left + .Width * 0.5
                        brr(n, 2) = .Top + .Height * 0.5
                        n = n + 1
                    End If
                End With
            Next
        Next
        If n > 2 Then
            With .Shapes.BuildFreeform(msoEditingAuto, brr(1, 1), brr(1, 2))
                For i = 2 To n - 1
                    .AddNodes msoSegmentLine, msoSegmentLine, brr(i, 1), brr(i, 2)
                    m = m + 1
                Next
            .ConvertToShape
            End With
        End If
    End With
End Sub

 百度排版真烂。。

追问
如果表中的数字是用公式得来的,这代码还能让这些数字自动连线吗
追答

郁闷,就改了几个字母字数就超限了?

用附件的代码吧,对于大量数据速度要快,之前那个效果能达到,不过写得不好。


然后,对于题主的追问,强烈BS,这种问题,自己试试就知道了,写了代码,你连试一下都不愿意。。

解0人
2016-03-11 · TA获得超过2389个赞
知道大有可为答主
回答量:1474
采纳率:83%
帮助的人:740万
展开全部
可以写,需要的话请私信联系,需要你的附件。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EXCEL活学巧用之财务
2016-03-10 · 沉下心来学EXCEL , 财务应用入门到精通 !
EXCEL活学巧用之财务
采纳数:645 获赞数:1603

向TA提问 私信TA
展开全部
这得多少代码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
勤奋的泡面
2016-03-10 · TA获得超过2044个赞
知道小有建树答主
回答量:484
采纳率:60%
帮助的人:214万
展开全部
我也想知道。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式