通过VBSCRIPT合并两个CSV文件时获取多个标题

问题描述 投票:0回答:1
Sub Tarun()
    Dim sFolderIn   'As String
    Dim sFolderOut  'As String
    Dim sFName      'As String
    Dim sNewFName   'As String
    Dim sData       'As String

    sFolderIn = "C:\Users\tbhalla2\Desktop\tarun"
    sFolderOut = "C:\Users\tbhalla2\Desktop\tarun\New"
    sNewFName = "AllCombined.csv"

    If Dir(sFolderOut, vbDirectory) = "" Then MkDir sFolderOut
    sFName = Dir(sFolderIn & "\*.csv")
    If sFName <> "" Then
        Open sFolderOut & "\" & sNewFName For Output As #1
        Do
            Open sFolderIn & "\" & sFName For Input As #2
            sData = Input(LOF(2), 2)
            If Len(sData) Then
                Print #1, sData;
                If Right$(sData, 2) <> vbCrLf Then Print #1,
            End If
            Close #2
            Name sFolderIn & "\" & sFName As sFolderOut & "\" & sFName
            sFName = Dir()
        Loop Until sFName = ""
        Close #1
    End If
End Sub
vbscript
1个回答
0
投票

在您的Do循环之前,创建一个计数器变量,例如iFilesRead,并将其设置为0。

Dim iFilesRead
iFilesRead = 0 

然后,在您的Do循环中,递增该计数器

iFilesRead = iFilesRead + 1

在将sData写入输出文件之前,删除将成为标题的第一行:

If iFilesRead > 1 Then
    sData = Mid(sData, InStr(sData, vbCrLf) + 2)
End If
© www.soinside.com 2019 - 2024. All rights reserved.