数组公式
=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)
数组公式
软件版本:Office2007
方法如下:
1.提取Sheet1中A列数据到Sheet2的A列中:
2.Alt+F11,输入代码如下:
Sub m()
For i = 1 To Range("A65536").End(3).Row '从A列第一行到最后一个非空行循环
Sheets(2).Cells(i, "A") = Cells(i, "A") '赋值给Sheet2中的同样单元格当前单元格内容
Next
End Sub
3.F5执行代码,结果如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)