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

例如,原始数据表A列中每4行组成一组数据,我需要把每组数据中“编号:”后面的编号及“挖方:”后面的方量逐组分别提取到另一个表中的第一列和第三列。请教各位老师,怎么写这个代码?表格格式见下图!

用函数也可以
数组公式
=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)
数组公式
温馨提示:答案为网友推荐,仅供参考
相似回答