首页 > 其他分享 >在macos系统上使用vba把excel的每个工作表另存为csv文件

在macos系统上使用vba把excel的每个工作表另存为csv文件

时间:2024-05-26 13:34:55浏览次数:34  
标签:Dim macos 另存为 excel newWb fileName savePath csv newWs

Sub ExportWorksheetsAsCSVOnMac()
    Dim ws As Worksheet
    Dim newWb As Workbook
    Dim newWs As Worksheet
    Dim savePath As String
    Dim fileName As String
    Dim filePermissionCandidates
    
    '导出所有工作表到单独的csv文件,并以工作表命名,保存路径为当前excel文件所在目录下的导出的csv
    savePath = ThisWorkbook.Path & "/"
    filePermissionCandidates = Array(savePath)
    fileAccessGranted = GrantAccessToMultipleFiles(filePermissionCandidates)   '给要保存的文件所在文件夹授权,不然在保存时会出现无法访问只读文件
    If Not fileAccessGranted Then
        MsgBox savePath & ",授权失败"
        Exit Sub
    End If
    ' 创建新的工作簿
    Set newWb = Workbooks.Add
    
    ' 遍历原工作簿中的所有工作表
    For Each ws In ThisWorkbook.Worksheets
        ' 复制工作表到新工作簿
        newWb.Worksheets(1).Name = "asdfonmasdofmasodfmo"
        ws.Copy after:=newWb.Sheets(newWb.Sheets.Count)
        Application.DisplayAlerts = False ' 禁用确认删除的弹窗
        newWb.Worksheets(1).Delete
        'Application.DisplayAlerts = True
        
        Set newWs = newWb.Sheets(newWb.Sheets.Count)
        
        fileName = newWs.Name & ".csv"
        With newWs
            filePermissionCandidates = Array(savePath & fileName)
            fileAccessGranted = GrantAccessToMultipleFiles(filePermissionCandidates)
            If Not fileAccessGranted Then
                MsgBox savePath & ",授权失败"
                Exit Sub
            End If
            .SaveAs fileName:=savePath & fileName, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
            .SaveAs fileName:=savePath & fileName, FileFormat:=xlCSVUTF8, CreateBackup:=False
        End With
    Next ws
    newWb.Close SaveChanges:=False
    Set newWb = Nothing
    Set newWs = Nothing
End Sub

  

标签:Dim,macos,另存为,excel,newWb,fileName,savePath,csv,newWs
From: https://www.cnblogs.com/gushandujian/p/18213560

相关文章

  • EXCEL VBA终极提速,超级公式,算法优化
    1,简化公式,200个字变成10个字有很多公式写的很长,看不懂很难维护,如果改成VBA代码,简化成一个超级函数,方便维护,还可以给多个工程共用,实现模块化开发2,计算提速。有些vba运算很慢,需要几分钟到几小时,用好的方法,运行速度可以减到1分钟以内甚至10秒以内。这2天做了一个3万个左右的订......
  • Homebrew Tap:酿造你的个性化 macOS 软件库
    对于macOS用户来说,Homebrew无疑是一个强大的软件包管理工具,它极大简化了软件的安装、更新和卸载。然而,有时候我们仍然会发现一些特定的、小众的或者专业的软件并不在其中。这时,HomebrewTap就成了救星,它允许我们添加和管理第三方仓库,也可以扩展和定制自己的软件库,从而......
  • react框架对Excel文件进行上传和导出
    1.首先需要安装xlsx第三方的库库引入插件npminstallxlsx在react引入import*asXLSXfrom'xlsx';1,首先设置jsx部分的 以下代码包含有导入excel文件和导出excel文件,读着可以根据需要,自己选择想要实现的功能 代码如下(示例)://importReactfrom'react';importR......
  • Python 潮流周刊#52:Python 处理 Excel 的资源
    本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。本期周刊分享了12篇文章,12个开源项目,赠书5本《网络是怎样连接的》,全文1......
  • 用 Python 编写网络爬虫:从网页获取数据并存储到 Excel 文件
    在本篇博客中,我们将介绍如何使用Python编写一个简单的网络爬虫,用于从网页中提取数据,并将这些数据存储到Excel文件中。我们将使用Python中的一些库来实现这个功能,包括urllib.request、BeautifulSoup和openpyxl。1.网络爬虫的基本原理网络爬虫是一种程序,可以自动访问......
  • 在excel中使用python 快速作图示例
    前言Excel中可以使用python算是一个旧闻了,是python之父GuidovanRossum加入微软的重要产品。刚出来的第一时间我也尝鲜了,最近作图的时候,再次使用了这个功能,感觉非常方便,推荐大家也用一下。优点:Python在云端运行,无需部署环境。可以编写脚本来自动化日常的Excel任务......
  • 【资料分享】你敢相信这些高大上的BI仪表盘都是用EXCEL做出来的?!
    引言现在大家都知道数据可视化、数据看板,几乎每个公司部门都有仪表盘的需求。近年来,学习可视化软件的人也越来越多,国外Tableau、PowerBI就是这一领域的领先者,而国内也有不少厂家在研发数据可视化软件,比如帆软是目前国内做的比较好,同时网易、腾讯等大厂也有在推出自己的可......
  • EXCEL单元格,只有双击后才会变正常
    选中整列,“数据”--->“分列”--->“分隔符号”--->“下一步”--->“tab键”--->“下一步”--->“常规”--->“完成”如经过以上步骤后数值未能正常显示,选中整列,“设置单元格格式”---->“1234”---->小数位数改为“0”--->“确定”。......
  • js导出excel
    引用ExcelJSletmasterGrid=$("#gridContainer").dxDataGrid("instance");//GettheselectedmasterrowsletselectedMasterRows=masterGrid.getSelectedRowsData();if(selectedMasterRows.length==0){selectedMast......
  • office系列软件(word、ppt、excel)打不开的解决方案
    前言​ 这里我遇到的情况是点击都没反应,而不像很多人那样有报错弹窗,费劲千辛万苦才最终解决,中间一度自暴自弃想着干脆用WPS得了(大可不必),中间我尝试了三种方法,不一定哪种有效,权当分享;一、使用WindowsPowerShell(管理员)方式使用快捷键WIN+X打开菜单,并点击终端管理员选项......