[Excel+VBA]如何查找某个表格里的数据并将相关数据复制到另一个表中的相应列中?

[Excel+VBA]如何查找某个表格里的数据并将相关数据复制到另一个表中的相应列中?,第1张

用函数也可以

数组公式

=INDEX(三角网原始数据!A:A,SMALL(IF(ISNUMBER(FIND("编号",三角网原始数据!$A$1:$A$100)),ROW(三角网原始数据!$A$1:$A$100),65536),ROW(A1)))&""

同时按CTRL SHFIT 回车键

出现结果,下拉公式

第3列同理

VBA的要依次循环包含了 编号或 挖方的数据

或设置 步长

复制到 sheet1表

Sub 编号()

Dim i, n

n = 2

For i = 1 To Sheets("三角网原始数据").Range("a65536").End(xlUp).Row Step 6

n = n + 1

Cells(n, "a") = Sheets("三角网原始数据").Cells(i, "A")

Cells(n, "C") = Sheets("三角网原始数据").Cells(i + 4, "A")

Next

End Sub

A3=RIGHT(INDEX(三角网原始数据!A:A,SMALL(IF(ISNUMBER(FIND("编号",三角网原始数据!$A$1:$A$100)),ROW(三角网原始数据!$A$1:$A$100),65536),ROW(A1)))&"",LEN(INDEX(三角网原始数据!A:A,SMALL(IF(ISNUMBER(FIND("编号",三角网原始数据!$A$1:$A$100)),ROW(三角网原始数据!$A$1:$A$100),65536),ROW(A1)))&"")-3)

C3=MID(INDEX(三角网原始数据!A:A,SMALL(IF(ISNUMBER(FIND("挖方",三角网原始数据!$A$1:$A$100)),ROW(三角网原始数据!$A$1:$A$100),65536),ROW(A1)))&"",4,FIND("填方",INDEX(三角网原始数据!A:A,SMALL(IF(ISNUMBER(FIND("挖方",三角网原始数据!$A$1:$A$100)),ROW(三角网原始数据!$A$1:$A$100),65536),ROW(A1)))&"")-5)

数组公式

方法一

如果数据在A列,A1是第一个,在第一行的空白单元格中输入下面的公式

=IF(COUNTIF(A:A,A1)>1,1,2)

上面的公式是只要是重复的,这个公式的值就为1,2的就不是重复的。

你再用自动筛选,选出来有2的,复制到表2.

方法二

用高级筛选

菜单=数据--筛选--高级筛选--将结果复制到其它位置

列表区域$A:$A

复制到Sheet2!$B:$B

勾,选择不重复记录。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6717655.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存