|
Option Explicit
Dim A(1 To 10 ^ 4, 1 To 32) '32 = 日期占1列 + 项目占1列 + GWg占30列
Dim p '文本的路径
Dim s '文本的个数
'入口
Sub test()
Dim f
s = 0
p = ThisWorkbook.Path & "\txt\"
f = Dir(p & "*.txt")
Do While f <> ""
s = s + 1
Call test2(f)
f = Dir
Loop
Rows("3:65536") = ""
[a3].Resize(s, UBound(A, 2)) = A
End Sub
'单个文本
Sub test2(f)
Dim B, str, j
Open p & f For Input As #1
B = Split(StrConv(InputB(LOF(1), 1), vbUnicode), vbCrLf)
Close #1
A(s, 1) = rq(B(2))
A(s, 2) = xm(B(2))
For j = 3 To UBound(A, 2)
If B(j + 3) = "" Then Exit For
A(s, j) = GWg(B(j + 3))
Next j
End Sub
'获取日期
Function rq(ByVal x) As String
x = Application.Trim(x)
x = VBA.Split(x, " ")(1)
rq = x
End Function
'获取项目
Function xm(ByVal x) As String
x = Application.Trim(x)
x = VBA.Split(x, " ")(0)
xm = x
End Function
'获取GWg
Function GWg(x) As Integer
x = Application.Trim(x)
x = VBA.Split(x, " ")(1)
x = VBA.Replace(x, "*", "")
GWg = x
End Function
1.rar
(21.9 KB, 下载次数: 39)
|
评分
-
查看全部评分
|