精华内容
下载资源
问答
  • 解压缩,用office的Excel打开《vba批量另存为工具.xlsm》文件,启用宏 选择转换文件,ctrl A 本目录下文件全选,注意去掉后缀后不要有名称相同的,不然会报不能打开相同名称工作薄错误。 点击执行,选择另存的...

        多个Excel文件如何批量存成xls格式、2003格式、2007格式、2010格式、xlsx格式 、csv格式、或pdf格式,或格式之间进行转换的工具提供如下:

       下面是 vba编写的excel批量转换为 ,xls格式、xlsx格式 、csv格式、或pdf格式的工具。用office打开就可以使用。

        使用界面如下:

         

     

     

    解压缩,用office的Excel打开《vbaPLLCW.xlsm》文件,启用宏

        选择转换文件,ctrl  A 本目录下文件全选,注意去掉后缀后不要有名称相同的,不然会报不能打开相同名称工作薄错误。

          点击执行,选择另存的目录,注意不要选择原来的目录,默认覆盖目录中已有文件。

        下载地址: www.excelfb.com  点击:  批量转换Excel格式    下载后解压

       核心代码:

    ‘点击执行则将listBox1中的文件执行批量另存为
    Private Sub CommandButtonRun_Click()
        Dim saveFolderSel As String
        Dim saveType As String
        saveFolderSel = SelectFolder()
        If Len(saveFolderSel) <= 0 Then
            MsgBox ("未选择保存的目录")
        End If
        saveType = GetSaveType()
        If Len(saveType) <= 0 Then
            MsgBox ("未选择保存的文件类型")
        End If
        
        If Len(saveType) > 0 And Len(saveFolderSel) > 0 Then
    
            saveFolder.Caption = "另存到:" + saveFolderSel
            
            Dim allCount As Long
            allCount = ListBox1.ListCount
            With ListBox1
                For i = 0 To .ListCount - 1
                    LabelShowInfo.Caption = "正在处理第" + Str(i + 1) + "个,总共" + Str(allCount) + "个"
                    Dim filePath As String
                    filePath = .List(i)
                    Call SaveAs_DelDefaultMaxRowCol(filePath, saveFolderSel, saveType)
                    LabelShowInfo.Caption = "正在处理第" + Str(i + 1) + "个,总共" + Str(allCount) + "个"
                Next
                
            End With
            LabelShowInfo.Caption = ""
            MsgBox ("全部完成,确定后程序退出,记住另存为的目录:" + saveFolderSel)
    
        
        End If
        
        
    End Sub
    ‘按照格式另存为
    Sub SaveAs_DelDefaultMaxRowCol(file As String, folder As String, saveType As String)
    
        
        Dim fileName As String
        fileName = GetFileNameByFilePath(file)
        
        Dim saveFilePathStr As String
        
        saveFilePathStr = folder + "\" + fileName + saveType
    
        If saveType = ".xlsx" Then
            Workbooks.Open fileName:=file
            Application.DisplayAlerts = False
            ActiveWorkbook.SaveAs fileName:=saveFilePathStr, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
            ActiveWorkbook.Save
            ActiveWorkbook.Close
        ElseIf saveType = ".xls" Then
            Workbooks.Open fileName:=file
            Application.DisplayAlerts = False
            ActiveWorkbook.SaveAs fileName:=saveFilePathStr, FileFormat:=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
            ActiveWorkbook.Save
           ActiveWorkbook.Close
        ElseIf saveType = ".csv" Then
            Workbooks.Open fileName:=file
            Application.DisplayAlerts = False
            ActiveWorkbook.SaveAs fileName:=saveFilePathStr, FileFormat:=xlCSV, CreateBackup:=False
            ActiveWorkbook.Save
            ActiveWorkbook.Close
        ElseIf saveType = ".pdf" Then
            Workbooks.Open fileName:=file
            Application.DisplayAlerts = False
            ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:=saveFilePathStr, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
            ActiveWorkbook.Close
        End If
    
        Application.DisplayAlerts = True
    End Sub
    

     

    展开全文
  • xls另存为xlsx 在要合并和文件同级目录下, 新建一个Excel文件,按 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码。运行。等候一会就OK了。 '***********访问当前文件夹下所有子...

    xls另存为xlsx

    在要合并和文件同级目录下, 新建一个Excel文件,按 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码。运行。等候一会就OK了。

    '***********访问当前文件夹下所有子文件夹及文件,
    Dim iFile(1 To 100000) As String
    Dim count As Integer
    Sub xls2xlsx()
        iPath = ThisWorkbook.Path
        On Error Resume Next
        count = 0
        zdir iPath
        For i = 1 To count
            If iFile(i) Like "*.xls" And iFile(i) <> ThisWorkbook.FullName Then
                MyFile = iFile(i)
                FilePath = Replace(MyFile, ".xls", ".xlsx")
                If Dir(FilePath, 16) = Empty Then
                    Set WBookOther = Workbooks.Open(MyFile)
                    Application.ScreenUpdating = False
                    ActiveWorkbook.SaveAs Filename:=FilePath, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
                    WBookOther.Close SaveChanges:=False      '解决不能close 文件问题
                    Application.ScreenUpdating = True
                End If
            End If
        Next
    End Sub
    Sub zdir(p)       '访问当前文件夹下所有子文件夹及文件
      Set fs = CreateObject("scripting.filesystemobject")
      For Each f In fs.GetFolder(p).Files
        If f <> ThisWorkbook.FullName Then count = count + 1: iFile(count) = f
      Next
      For Each m In fs.GetFolder(p).SubFolders
          zdir m
      Next
    End Sub
    

    合并多个文件是一个文件的多个sheet

    新建一个Excel文件,按 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码。运行。等候一会就OK了。

    合并后,查看sheet总数:
    在任意一个单元格输入函数
    =INFO("numfile")

    Sub CombineWorkbooks()
    Dim FilesToOpen, ft
    Dim x As Integer
    Application.ScreenUpdating = False
    On Error GoTo errhandler
    FilesToOpen = Application.GetOpenFilename _
    (FileFilter:="Micrsofe Excel文件(*.xlsx), *.xlsx", _
    MultiSelect:=True, Title:="要合并的文件")
    If TypeName(FilesToOpen) = "boolean" Then
    MsgBox "没有选定文件"
    'GoTo errhandler
    End If
    x = 1
    While x <= UBound(FilesToOpen)
    Set wk = Workbooks.Open(Filename:=FilesToOpen(x))
    wk.Sheets().Move after:=ThisWorkbook.Sheets _
    (ThisWorkbook.Sheets.Count)
    x = x + 1
    Wend
    MsgBox "合并成功完成!"
    errhandler:
    'MsgBox Err.Description
    'Resume errhandler
    End Sub
    
    展开全文
  • 快速批量另存工作表

    千次阅读 2019-01-26 03:31:16
    不少Excel用户都遇到过这样的场景,一个工作簿中有N多个工作表,经常需要把全部(或者还多个)工作表单独另存为Excel文件,然后可能邮件发送个不同部门。操作步骤如下: 选择工作表 选中全部单元格 拷贝 新建工作簿...

    不少Excel用户都遇到过这样的场景,一个工作簿中有N多个工作表,经常需要把全部(或者还多个)工作表单独另存为Excel文件,然后可能邮件发送个不同部门。操作步骤如下:

    1. 选择工作表
    2. 选中全部单元格
    3. 拷贝
    4. 新建工作簿文件
    5. 粘贴(假设不需要格式调整,省略N步)
    6. 保存工作簿

    这个操作并不复杂嘛!没错,如果老板告诉你,有100个工作表需要处理,每天都要做一遍,是否心中顿时飘过一万只某某马 …

    * 图片来自互联网,版权属于原作者
    如果你还在手忙脚乱的选中多个工作表,直到手抽筋,请先移步这里:

    如何选中多个工作表?

    STEP 1. 选中需要导出的工作表(一个 / 多个 / 全部)
    STEP 2. 按下快捷键执行下面代码
    STEP 3. 木有了 … (泡杯咖啡撩妹去吧)

    Sub ExportSheets()
        Dim wsh As Worksheet
        Dim strPath As String
        strPath = ThisWorkbook.Path & "\"
        For Each wsh In ActiveWindow.SelectedSheets
            wsh.Copy
            With ActiveWorkbook
                .SaveAs strPath & wsh.Name & ".xlsx", FileFormat:=xlOpenXMLWorkbook
                .Close
            End With
        Next wsh
    End Sub
    

    工作也可以这么简单。

    展开全文
  • 一个excel文件就是一个excel工作簿例如abc.xls,一个工作簿中包含1个到若干个工作表例如sheet1,也就是说工作簿是由工作表组成的。 下面我们就来了解一下工作簿的操作 打开工作簿 Application.displayAlerts=...

     

                                               工作表的基础操作

    上一章我们学习了工作表的一些操作,这一章就来学习一下对工作簿的操作

    • 工作表和工作簿有什么区别呢?

    一个excel文件就是一个excel工作簿例如abc.xls,一个工作簿中包含1个到若干个工作表例如sheet1,也就是说工作簿是由工作表组成的。

    下面我们就来了解一下工作簿的操作

    • 打开工作簿

    Application.displayAlerts=false   //点击保存会有弹框出现,所以要先关闭弹框

    Application.screenUpdating =false   //操作工作簿桌面会出现闪动。也先关闭掉

    Workbooks.open filename:=”d:\data\1.xlsx”  //打开D盘data文件下的1.xlsx工作簿

    Activeworkbook.sheets(1).range(“a1”)=”到此一游”  // Activeworkbook表示当前活动的工作簿。Activeworkbook.sheets(1).range(“a1”)指当前活动的工作簿的第一个工作表的A1单元格填写”到此一游”。证明我们真的打开过。

    Activeworkbook.Save  //保存一下刚刚做的修改

    Activeworkbook.close //关闭工作簿

    Application.displayAlerts=true   //开启

    Application.screenUpdating =true  //开启

     

    • 新建工作簿

    Application.displayAlerts=false

    Application.screenUpdating =false

    Workbooks.add  //新建一个工作簿

    Activeworkbook.sheets(1).range(“a1”)=”到此一游haha” //新建工作簿会自动打开,默认有一个sheet1工作表,我们在新建工作簿的第一个工作表的A1单元格填写”到此一游”。证明我们的操作成功了。

    Activeworkbook.Save   //保存一下,新建文档默认会保存到文档目录下面,你可以手动新建一个工作簿直接点保存看一下默认地址。

    Activeworkbook.close  //关闭

    Application.displayAlerts=true

    Application.screenUpdating =true

     

    • 保存工作簿

    Activeworkbook.SaveAsfilename:=”d\data\2.xlsx”

     

    • 关闭工作簿

    Activeworkbook.close

     

    • Foreach 的用法

    前几章我们一张掌握了for的用法,今天来介绍for的另一种写法。。

    有点像php语言的写法,下面我们通过两段代码来更直观的了解for each

     需求1:将单元格A1 到A10 都赋值1

    For的写法:

    Dim i as integer For i=1 to 10    Range(“a” & i)=iNext

    For each的写法:

    Dim ra as range  For each ra in range(“a1:a10”)   ra=1  //上面我们定义了ra as range,ra是单元格类型,表示a1到a10单元格  Next

     

    需求2:将单元格A1 到A10 赋值为他们各自的下标

    For的写法:

    Dim i as integer For i=1 to 10    Range(“a” & i)=i  Next

     

    For each的写法:

    Dim ra as range     For eachra in range(“a1:a10”)       i=i+1    //  每次循环i+1,i初始值默认是0       Ra=i   //等价于range(“a”& i)= i    Next
    

    学会了for each 我们来实战一下

    案例1

    题目:

        除了叫“绝不能删”的表不删除外,批量删除工作簿中的其他表。

    分析:

       1. 要判断每一张表的名字,不等于“绝不能删”,执行删除操作

       2.要定义一个变量类型为工作表dim sht as worksheet

       3.执行删除操作会有提示弹框要事先关闭

    代码:

    sub del()Dim sht as worksheetApplication.displayAlerts=false  //执行删除操作会有弹框出现,所以要先关闭弹框  For each sht in sheets    If sht.name <>”决不能删” then      sht.delete    End if  NextApplication.displayAlerts=trueend sub
    

    案例2

    题目:

    将工作簿中的所有工作表另存为一个个excel文件,另存地址为d:\data

     

    代码:

    sub chaifen()
    
    For each sht in sheetsSht.copy    // copy不指定位置默认新建一个工作簿Activeworkbook.SaveAs filename:=”d\data\”& sht.name & ”.xlsx” //文件路径Activeworkbook.close//关闭Nextend sub
    

     结果如下图:

    对数据分析或者vba有兴趣的朋友可以关注我的公众号,我会在公众号里面发学习笔记,全是干货。一起学习一起成长!

     

     

     

     

    展开全文
  • VBA代码模块,EXCEL图片一键另存为 Sub Opiona() 'On Error Resume Next '// 发生错误,自动执行下一句,就是忽略错误 Application.ScreenUpdating = False '//关闭屏幕刷新 Application.DisplayAlerts = False '//...
  • 通过python实现批量excel转pdf代码。
  • 工具/原料 excel 2013 ...首选我们把需要导出CVS的Excel文件整理集中到一个文件夹中。然后新建一个文件夹用来保存CSV文件的。支持Xlsx、xls格式。 新建一个EXCEL表...
  • VBA一键sheet页另存为Excel批量拆分Excel sheet页为单个文档。
  • Excel中,我们可以使用“另存为”功能将工作簿转换为CSV文件,但是您知道如何将多个Excel文件批量转换为单独的CSV文件吗? 在本文中,我介绍了一个VBA代码,用于将文件夹中的所有Excel文件批量转换为Excel中的CSV...
  • # _*_ coding: utf-8 _*_ #导入xls的模块 ...#批量改名字,把.xlsm的后缀改成.xls files = os.listdir('D:\\work\\testcode\\python\\his') for name in files: #分离文件名字和后缀 portion = os.pa
  • Excel批量转换csv并合并多个csv

    万次阅读 2018-07-14 15:18:30
    最近在做一些数据分析,想要把多个excel文件...一、将Excel批量转换csv 1、首先把需要导出的Excel文件集中整理到一个文件夹中,并且确定一个用来保存csv文件的路径 2、新建一个Excel文件,点击菜单栏上的“开...
  • #default 0 指定列名行,默认0,即取第一行,数据列名行以下的数据 ,若数据不含列名,则设定 header = None file_excel=pd.read_excel(file,sheetname=0) file_excel.to_csv(to_file,index=False) if __name...
  • 将sheet工作表批量另存为独立的工作簿,并命名成sheet表的名称 用法:打开excel文档,按ALT+F11调出VB编辑器,点插入模块,粘贴代码,按F5运行即可。 Sub saveworkbook() '将sheet工作表批量另存为独立的工作簿,并...
  • vba批量存储excel图片

    2018-11-03 11:16:15
    VBA实现批量按文件名存储excel图片到文件夹里,非常方便快捷,不用手动一张一张另存为图片了,为excel办公减少了不必要的时间
  • excel中的多个sheet自动另存为以sheet名称命名的excel文件,用delphi开发,含源码。
  • Excel VBA 当前文件另存为txt

    千次阅读 2019-03-14 13:24:15
    Sub saveTxt() Application.DisplayAlerts = False ThisWorkbook.SaveAs Filename:=ThisWorkbook.Path &amp; "\bom_empty.txt", _ FileFormat:=xlText, CreateBackup:=False Application.Displ...
  • csv2excel批量转换工具

    2015-04-28 15:42:28
    csv文件批量转换为xls,代替手工用EXCEL打开再另存为的麻烦。
  • import os.path import time import pandas as pd ...LOGGER = logger.MyLogger(“excelUtils”).getLogger() class ExcelReader: “”" 读取excel工具 “”" def __init__(self, path, file_suffix=".xl...
  • '设置活动窗口当前 Set wkb = ActiveSheet fileName = bookPath + sheet_name + ".csv" On Error GoTo eh Const adTypeText = 2 Const adSaveCreateOverWrite = 2 Dim BinaryStream Set BinaryStream = ...
  • excel多个工作表另存为单独的工作薄 工作中为了方便,我们常常将多个数据类似的表放在同一个工作薄,但是如果要对每个文件执行相同的转换或处理,需要用R或Python读取每张表的数据,这时就要将其拆分为一个个...
  • excel批量将xlsx转为csv的插件
  • excel中的多个sheet自动另存为以sheet名称命名的excel文件,用delphi开发,含源码。
  • 用VBA将xml格式的excel另存为xlsx

    千次阅读 2019-06-15 01:46:26
    需求背景 需要将从数据库提取的数据交给用户,由于数据量较大(好几十万行),若导出...但由于工具限制,软件无法直接导出为Excel格式,但可导出Excel XML Spreadsheet,后缀名xml,Excel可直接打开。 后面想更进...
  • 解决高版本加密Excel文件(XLSX)另存为97-2003的xls,poi读取失败的问题  public static void main(String[] args) { try { decryptExcel_xlsx1(); } catch (IOException e) { e.printStackTrace(); } ...
  • excel表中一列的图片批量导出并以其中一列的数值命名 输出到一个文件夹中 vba代码该怎么写
  • 在网上找了个EXCEL转化TXT的JAVA代码,改了下使得可以批量的转化EXCEL为TXT: 当然,我们这里需要用到三个jar包,可以去http://apache.freelamp.com/poi/release/bin/下载第一个文件名:poi-bin-3.1-FINAL-...
  • @echo offdir /b *.* > 导出的文件名.txtexit 转载于:https://www.cnblogs.com/hrx-star/p/4035171.html
  • 最近做实验需要大批量整理数据,写了一些批量处理的脚本,原文件大概长这样 文件夹打开长这样: 用python把这些文件保存到一个excel表格里,效果是这样的: 代码如下: import pandas as pd import os import ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,328
精华内容 931
关键字:

excel批量另存为