|
- Sub Macro1()
- Dim arr(1 To 10000, 1 To 1)
- Open ThisWorkbook.Path & "\pst_test.lst" For Input As #1
- Do While Not EOF(1)
- n = n + 1
- Line Input #1, arr(n, 1) '读入每行
- If InStr(arr(n, 1), "MEMBER FORCES AND MOMENTS") > 0 Then xstr = xstr & "," & n '记录各分隔符的行数
- Loop
- xstr = xstr & "," & n '最底下一行
- Close #1
- ReDim brr(1 To UBound(arr), 1 To 1)
- xrr = Split(xstr, ",")
- xs = xrr(1) '当前段起始行
- For k = 2 To UBound(xrr)
- xe = xrr(k) '当前段结束行
- If xe = n Then xe = xe + 1 '如果到最后一行,+1(用于下面循环xe-1)
- For i = xs + 1 To xe - 1 '保留分隔符之间的内容
- p = p + 1
- brr(p, 1) = arr(i, 1)
- Next
- xs = xrr(k) '下一段起始行
- Next
-
- Sheet2.[a1].Resize(p, 1) = brr
- End Sub
复制代码 |
|