以下是txt文件中可用的示例数据
我想在另一个文件中提取数据,其中Sr no为1。
请建议我执行CMD命令的VBA代码并将数据分成另一个txt文件。我已经搜索了互联网,并通过使用 Shell("")了解它是可能的。帮助我实现上述目标。
我的txt文件(即file3)在Z:\ drive中可用。
通过以下代码我可以打开cmd命令窗口
Sub macro()
Call Shell("cmd.exe", vbNormalFocus)
End Sub
答案 0 :(得分:0)
Call Shell(,)命令用于加载CMD。
如果要通过VBA从CMD加载文件,可以使用如下内容:
Sub Open_CPT()
Dim Loc As String
Loc = "Z:/#CPT.bat"
Call Shell(Loc, 1)
End Sub
这将打开该位置的文件或项目。
根据您想要分割/分割数据的方式,您可能希望使用Excel / VBA的本机功能打开文件并使用空格/制表符/等分隔。然后,您可以根据需要将其另存为.txt文件。
答案 1 :(得分:0)
感谢您的指导,根据 Dave 的说明,我在FileSystemObject
的帮助下开发了以下代码
请找到以下解决方案。
Sub VBA()
Dim fr, t As String
Dim s As String
ReDim arr(500) As String
ReDim arri(500) As String
Dim i As Long
i = 0
ii = 0
Dim n As Integer
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fr = "z:\file3.txt"
Set oFS = fso.OpenTextFile(fr)
Do While Not oFS.AtEndOfStream
arr(i) = oFS.ReadLine
sls = InStr(1, arr(i), 1, vbTextCompare)
If sls >= 1 Then
arri(ii) = arr(i)
ii = ii + 1
End If
i = i + 1
Loop
oFS.Close
n = FreeFile()
s = arri(0)
For ix = LBound(arri) + 1 To UBound(arri)
s = s & vbCrLf & arri(ix)
Next
Open "z:\file2.txt" For Output As #n
Print #n, s
End Sub