乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > excel如何用VBA将多个<em>csv</em>文件最后一行按照文件名称的...-csv 批

excel如何用VBA将多个<em>csv</em>文件最后一行按照文件名称的...-csv 批

作者:乔山办公网日期:

返回目录:excel表格制作


程序好编,只是这样有意义么,导入完毕就清除?
sub 宏()
dim p,f,st as worksheet

set st=sheets("sheet2")

if st.range("a1")="" then st.range("a1")=" "

p="c:\" '文件夹,你可能需要修改,一定要以\结尾

f=dir(p & "*.csv")

while f<>""

with workbooks.open(p & f)

.sheets(1).usedrange.copy st.cells(st.usedrange.rows.count+1,1)

.close

end with

f=dir

wend

end sub

以下代码是在原Excel文件后面新增工作表的方法导入CSV文件,每个工作表名对于CSV文件名。CSV文件与运行宏的这个文件在同一个文件夹里。

附件中的代码,参考下就会了



答:以下代码是在原Excel文件后面新增工作表的方法导入CSV文件,每个工作表名对于CSV文件名。CSV文件与运行宏的这个文件在同一个文件夹里e799bee5baa6e4b893e5b19e337

Sub Demo()
    Dim Filename As String
    Dim r As Long, c As Integer
    Dim txt As String, Char As String * 1
    Dim Data
    Dim i As Integer
    Dim NewSheet As Worksheet
    Dim NewCell As Range
    On Error Resume Next
    Filename = Dir(ThisWorkbook.Path & "\*.CSV")
    Do While Filename <> ""
        Set NewSheet = Worksheets.Add(after:=Sheets(Sheets.Count))
        NewSheet.Name = Filename
        Set NewCell = NewSheet.Range("A1")
        Open ThisWorkbook.Path & "\" & Filename For Input As #1
        r = 0
        c = 0
        txt = ""
        Application.ScreenUpdating = False
        Do Until EOF(1)
            Line Input #1, Data
            For i = 1 To Len(Data)
                Char = Mid(Data, i, 1)
                If Char = "," Then
                    NewCell.Offset(r, c) = txt
                    c = c + 1
                    txt = ""
                ElseIf i = Len(Data) Then
                    If Char <> Chr(34) Then txt = txt & Char
                    NewCell.Offset(r, c) = txt
                    txt = ""
                ElseIf Char <> Chr(34) Then
                    txt = txt & Char
                End If
            Next i
            c = 0
            r = r + 1
        Loop
        Close #1
        Filename = Dir
    Loop
    Application.ScreenUpdating = True
End Sub

相关阅读

关键词不能为空
极力推荐
  • 在<em>excel</em> 中,怎样实现数据<em>关联</em>?

  • 1、打开Excel表格。度查看大图" class="ikqb_img_alink">2、在公式页面,点击查找问与引用。3、点击查找与引用后,选择VLOOKUP函数。4、选择VLOOKUP函数后,第一个答是引用位置回,第二个是引

ppt怎么做_excel表格制作_office365_word文档_365办公网