ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 2562|回复: 9

[求助] 电子表格中两列姓名,如何实现相同名字自动连线,谢谢了。

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-4-22 09:22 | 显示全部楼层 |阅读模式
两列添加姓名后,会有很多姓名,两列名字基本一致,可能有不同的,把A列的名字与B列相同的自动连线,请问如何实现,谢谢。
image.png
image.png

如何自动连线.rar

7.74 KB, 下载次数: 36

样表

TA的精华主题

TA的得分主题

发表于 2020-4-22 11:10 | 显示全部楼层
本帖最后由 dengxingchang 于 2020-4-22 11:13 编辑

构建“带直线的散点图”。做起来挺麻烦的:

1. 假设A列是 x = 1,y = A、D列非空单元格数量两者中最大值-1 依次递减的数字。x、y 形成散点;
2. 假设D列是 x =2, y = A、D列非空单元格数量两者中最大值-1 依次递减的数字。x、y 形成散点;

那么,问题转化为查找上面两组散点的对应关系。转化为两步:
3. 查找D列在A列里的位置(Vlookup),查不到的取 NA()
4. 形成 带直线连接的散点数据(作图数据)。由于散点连线必须按1-2-空 - 1-2-空 这样的方式,否则线段会首尾相连。
    4.1 构建辅助数据 1、2、3、…… 序列
    4.2 构建辅助数据 1-2-0 (对4.1数据用 Mod( ,3))
    4.3 构建辅助数据 1-1-1、2-2-2、3-3-3、…… (用 Countif 函数统计 4.2数据中 1 的个数,需要用 $L2:L2 这种技巧)
    4.4 构建作图数据的散点 x (用if判断4.2数据,为1时取第3步查找到的A列x,4.2数据为2时取第D列x,4.2数据为0时取NA())。我用了 offset来查找。
    4.5 构建作图数据的散点 y。同样用了offset来查找
    4.6 筛选作图数据中的 NA(),删除
    4.7 用作图数据作散点图,y轴范围 0.5 ~ 7.5(本例),x轴范围 1-2
    4.8 将散点图移动到表中,调整位置

完成

TA的精华主题

TA的得分主题

发表于 2020-4-22 13:12 | 显示全部楼层
dengxingchang 发表于 2020-4-22 11:10
构建“带直线的散点图”。做起来挺麻烦的:

1. 假设A列是 x = 1,y = A、D列非空单元格数量两者中最大值 ...

复制粘贴吗?

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-4-22 13:45 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
dengxingchang 发表于 2020-4-22 11:10
构建“带直线的散点图”。做起来挺麻烦的:

1. 假设A列是 x = 1,y = A、D列非空单元格数量两者中最大值 ...

搜到了这个帖子,应该和这个差不多吧,但是不会修改。。。,http://club.excelhome.net/thread-87948-1-1.html
你这个我完全看不懂呀

TA的精华主题

TA的得分主题

发表于 2020-4-22 14:01 | 显示全部楼层

手打的。
我自己在你的附件基础上做了一遍,但是因为是公司电脑,不能上传附件。

TA的精华主题

TA的得分主题

发表于 2020-4-22 14:03 | 显示全部楼层
ui777 发表于 2020-4-22 13:45
搜到了这个帖子,应该和这个差不多吧,但是不会修改。。。,http://club.excelhome.net/thread-87948-1-1 ...

先对着每个知识点学习下。
每个人都是这么走过来的。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-4-22 16:11 | 显示全部楼层
dengxingchang 发表于 2020-4-22 14:01
手打的。
我自己在你的附件基础上做了一遍,但是因为是公司电脑,不能上传附件。

老师能把做好的传上来吗, 弄一下午没整出来,谢谢

TA的精华主题

TA的得分主题

发表于 2020-4-23 10:40 | 显示全部楼层
  1. Sub test()
  2.   Dim r%, i%
  3.   Dim arr, brr
  4.   With Worksheets("sheet1")
  5.     For Each shp In .Shapes
  6.       If shp.Type = 1 Then
  7.         shp.Delete
  8.       End If
  9.     Next
  10.     r1 = .Cells(.Rows.Count, 1).End(xlUp).Row
  11.     r2 = .Cells(.Rows.Count, 4).End(xlUp).Row
  12.     For i = 2 To r1
  13.       For j = 2 To r2
  14.         If .Cells(i, 1) = .Cells(j, 4) Then
  15.           .Shapes.AddConnector msoConnectorStraight, .Cells(i, 2).Left, .Cells(i, 2).Top + .Cells(i, 2).Height / 2, .Cells(j, 4).Left, .Cells(j, 4).Top + .Cells(j, 4).Height / 2
  16.         End If
  17.       Next
  18.     Next
  19.   End With
  20. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2020-4-23 10:41 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
详见附件。

如何自动连线.rar

24.18 KB, 下载次数: 106

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-4-23 13:53 | 显示全部楼层

太感谢你了,就是要这样效果。弄两天了
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-10-6 22:20 , Processed in 0.042895 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表