将Excel批量转换为csv并合并多个csv

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37717751/article/details/81043721

       最近在做一些数据分析,想要把多个excel文件合并成一个,写了python脚本尝试一下,结果因为数据量太大合并失败了。老师提示我可以转为csv文件,于是自己尝试了一下,真的太方便了...

一、将Excel批量转换为csv

       1、首先把需要导出的Excel文件集中整理到一个文件夹中,并且确定一个用来保存csv文件的路径

       2、新建一个Excel文件,点击菜单栏上的“开发工具”,并点击下面的Visual Basic

       如果菜单栏上面没有开发工具,则点击文件>>选项,在自定义功能区中将开发工具勾选上


       3、在左侧一栏中双击Sheet1打开代码窗口,输入以下代码

Sub SaveToCSVs()
    Dim fDir As String
    Dim wB As Workbook
    Dim wS As Worksheet
    Dim fPath As String
    Dim sPath As String
    fPath = "你的excel文件路径"
    sPath = "你要存放输出的csv文件的路径"
    fDir = Dir(fPath)
    Do While (fDir <> "")
        If Right(fDir, 4) = ".xls" Or Right(fDir, 5) = ".xlsx" Then
            On Error Resume Next
            Set wB = Workbooks.Open(fPath & fDir)
            'MsgBox (wB.Name)
            For Each wS In wB.Sheets
                wS.SaveAs sPath & wB.Name & ".csv", xlCSV
            Next wS
            wB.Close False
            Set wB = Nothing
        End If
        fDir = Dir
        On Error GoTo 0
    Loop
End Sub

       之后点击菜单栏上的“运行”,选择运行子过程/用户窗体。转换过程中会有多个Excel窗口自动显示再关闭。完成后打开设定的文件夹,就能看到转换后的csv文件。

二、将多个csv合并到一个csv中

       1、将所有的csv文件放到一个文件夹中

       2、打开cmd,切换到存放csv的文件夹

       3、输入命令

copy *.csv 你自己起的文件名.csv
       之后按回车等待完成,打开文件夹就可以看到合成的csv

猜你喜欢

转载自blog.csdn.net/m0_37717751/article/details/81043721
今日推荐