EXCEL中A1-J1十个单元格,其值为0-9的整数(如图),要求:当A1-J1单元格中有数据时,自动产生图左侧效果

当A1-J1单元格有数据时,自动生成如图示左侧效果(自动产生连线信息)不要求理论与讲解,只要求实现方法测试成功,达到如图效果后---高悬赏!!!... 当A1-J1单元格有数据时,自动生成如图示左侧效果(自动产生连线信息)
不要求理论与讲解,只要求实现方法
测试成功,达到如图效果后---高悬赏!!!
展开
 我来答
铰笔刀
2013-07-12 · TA获得超过477个赞
知道小有建树答主
回答量:451
采纳率:0%
帮助的人:269万
展开全部

1.按下Alt+F8,输入一个宏名,点创建,把下列代码复制、粘贴进"Sub 你写的宏名()"和“End Sub”之间,粘贴完后回到excel表。

‘Sub Macro1()
   Dim UpCell, DownCell As Range
   Dim t, b, r, l As Single
   
   If Selection.Rows.Count < 2 Then
       Exit Sub
   End If
   
   For Each aRow In Selection.Rows
       
       If aRow.Row = Selection.Rows.Count + Selection.Rows(1).Row - 1 Or Application.WorksheetFunction.CountA(aRow) = 0 Or Application.WorksheetFunction.CountA(aRow.Offset(1, 0)) = 0 Then
           Exit Sub
       End If
       
       If aRow.Cells(1, 1) = "" Then
           Set UpCell = aRow.Cells(1, 1).End(xlToRight)
       Else
           Set UpCell = aRow.Cells(1, 1)
       End If
       
       If aRow.Offset(1, 0).Cells(1, 1) = "" Then
           Set DownCell = aRow.Offset(1, 0).Cells(1, 1).End(xlToRight)
       Else
           Set DownCell = aRow.Offset(1, 0).Cells(1, 1)
       End If
       
       If UpCell.Left = DownCell.Left Then
           t = UpCell.Top + UpCell.Height * 0.7
           b = DownCell.Top + DownCell.Height * 0.3
           l = UpCell.Left + UpCell.Width / 2
           r = UpCell.Left + UpCell.Width / 2
       ElseIf UpCell.Left > DownCell.Left Then
           t = UpCell.Top + UpCell.Height * 0.7
           b = DownCell.Top + DownCell.Height * 0.3
           l = UpCell.Left + UpCell.Width * 0.3
           r = DownCell.Left + DownCell.Width * 0.7
       ElseIf UpCell.Left < DownCell.Left Then
           t = UpCell.Top + UpCell.Height * 0.7
           b = DownCell.Top + DownCell.Height * 0.3
           l = UpCell.Left + UpCell.Width * 0.7
           r = DownCell.Left + DownCell.Width * 0.3
       End If
       
       ActiveSheet.Shapes.AddLine l, t, r, b
   Next
‘End Sub


2.(选做)然后再按下Alt+F8,选中你刚才创建的宏,点“选项”,指定一个快捷键

3. 保证你的宏没有被禁用

4.选中你想连线的区域(单个区域,不能选多个区域)

5.如果你做了第2步,按下你的快捷键;如果你没有做第2步,还是按下Alt+F8,选中你刚才建的宏,点执行。


补充说明一下:如果你选中的区域中间有一行一个数也没有,那么这一行往下就不会再连线了。

安言Anyouth
2013-07-12 · TA获得超过1163个赞
知道小有建树答主
回答量:414
采纳率:0%
帮助的人:222万
展开全部
你要把列号,行号都显出来啊
谁知道A1-J1在图中是哪个位置
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式