本文作者:office教程网

如何在excel工作簿所有工作表中运行宏

office教程网 2024-11-09 21:12:41 924
后台-插件-广告管理-内容头部广告位
后台-系统设置-扩展变量-手机广告位-内容正文顶部
摘要: 在文件夹中所有文件上运行宏,或者在Excel工作簿中所有工作表上运行宏,这可能是一种非常好的Excel自动化方案。例如处理类似的数据工作簿文件并想要提取数据或转...

在文件夹中所有文件上运行宏,或者在Excel工作簿中所有工作表上运行宏,这可能是一种非常好的Excel自动化方案。例如处理类似的数据工作簿文件并想要提取数据或转换该工作簿。下面给出了适用这种情况的一些VBA程序,这些程序代码整理自analystcave.com,供有兴趣的朋友参考。

在文件夹内所有文件中运行宏

代码如下:

  • ‘本程序来自于analystcave.com
  • Sub RunOnAllFilesInFolder()
  • Dim folderName As String
  • Dim eApp As Excel.Application
  • Dim fileName As String
  • Dim wb As Workbook
  • Dim ws As Worksheet
  • Dim currWs As Worksheet
  • Dim currWb As Workbook
  • Dim fDialog As Object
  • Set fDialog =Application.FileDialog(msoFileDialogFolderPicker)
  • Set currWb =ActiveWorkbook
  • Set currWs = ActiveSheet
  • ‘选择存储所有文件的文件夹
  • fDialog.Title = “选择文件夹”
  • fDialog.InitialFileName =currWb.Path
  • If fDialog.Show = -1 Then
  • folderName =fDialog.SelectedItems(1)
  • End If
  • ‘创建一个单独的不可见的Excel处理进程
  • Set eApp = NewExcel.Application
  • eApp.Visible = False
  • ‘搜索文件夹中的所有文件[使用你的格式例如*.xlsx来代替*.*]
  • fileName = Dir(folderName& “\*.*”)
  • Do While fileName<> “”
  • ‘更新状态栏来指示进度
  • Application.StatusBar= “正在处理” & folderName & “\” & fileName
  • Set wb =eApp.Workbooks.Open(folderName & “\” & fileName)
  • ‘…
  • ‘在这里放置你的代码
  • ‘…
  • wb.CloseSaveChanges:=False ‘关闭打开的工作簿
  • Debug.Print “已处理 “& folderName & “\” & fileName
  • fileName = Dir()
  • Loop
  • eApp.Quit
  • Set eApp = Nothing
  • ‘清除状态栏并通知宏已完成
  • Application.StatusBar =””
  • MsgBox “在所有工作簿中都完成了宏执行”
  • End Sub

这段代码完成下列操作:

1.在当前工作簿路径中打开“选择文件”对话框,要求选择一个用于存储所有文件的文件夹。

excel图表制作:给多个数据系列添加趋势线

图表中有多个散点图,如何创建图表中这些数据的趋势线呢?如下图1所示,使用上半部分所示的数据,绘制下半部分所示的散点图。 图1 下面,我们需要向该图表中添加一个系列,该系列使用了绘制散点图的所有数据。详细操作步骤如下。 步骤1:在图表中单击右键,在快捷菜单中选择“选择数据”命令,如下图2所示。 图2 步骤2:在

2.打开一个单独的Excel进程(应用程序),然后逐个打开每个文件。

3.使用要在每个打开的工作簿上运行的代码替换“在这里放置你的代码”部分。

4.每个打开的工作簿在关闭时不会保存所作的修改。

在子文件夹内所有文件中运行宏

当想在文件夹中所有Excel文件上运行宏时,其中的一种情况是遍历所有子文件夹来运行宏。下面的内容与前述内容几乎相同,但是请注意声明了一个全局变量fileCollection,这将首先用于存储子文件夹中标识的所有文件,并且仅用于在此VBA集合中存储的文件上运行所有宏之后。

excel图表制作:给多个数据系列添加趋势线的加载宏

我们手工给多个散点图系列添加了一条趋势线,如下图 1 所示。 图 1 在图表中,最开始有 3 个数据系列,其公式分别为: =系列(Sheet1!$ C $ 2,Sheet1!$ B $ 3:$ B $ 11,Sheet1!$ C $ 3:$ C $ 11,1) =系列(Sheet1!$ E $ 2,Sheet1

后台-插件-广告管理-内容底部广告位
后台-系统设置-扩展变量-手机广告位-内容正文底部
未经允许不得转载:

作者:office教程网,原文地址:如何在excel工作簿所有工作表中运行宏发布于2024-11-09 21:12:41
转载或复制请以超链接形式并注明出处 演示站

分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏