对多个工作簿和多个工作表中的单元格值求和 - 宏

2023-12-01

  • 我有 50 本练习册。每个有 3 个工作表。
  • 我在单元格 A1 到 N1 的每个工作表中都有一个值。
  • 我想总结一个工作簿中的所有值(分别在 3 个工作表中)。 (即sheet1工作簿1的A1+sheet1工作簿2的A1+.....+sheet1工作簿50的A1=sheet1宏工作簿的A1。

同样,sheet1工作簿1的B1+sheet1工作簿2的B1+.....+sheet1工作簿50的B1=sheet1宏工作簿的B1。 3 张纸,比如 50 本练习册。

我更喜欢打开文件位置而不是从目录中选择。


在不同论坛的帮助下,我尝试从sheet1中的多个工作簿中获取总和:

Sub SUM_Workbooks()
    Dim FileNameXls As Variant
    Dim i As Integer
    Dim wb As Workbook
    FileNameXls = Application.GetOpenFilename(filefilter:="Excel Files, *.xl*", MultiSelect:=True)
    If Not IsArray(FileNameXls) Then Exit Sub
    Application.ScreenUpdating = False
    For i = LBound(FileNameXls) To UBound(FileNameXls)
        Set wb = Workbooks.Open(FileNameXls(i))
        wb.Sheets(1).Range("A1:N1").Copy
        ThisWorkbook.Sheets(1).Range("A1:N1").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks:=True, Transpose:=False
        Application.CutCopyMode = False
        wb.Close SaveChanges:=False
        Next i
    Application.ScreenUpdating = True
End Sub

我想将其延长 3 张。由于我不是 VBA 专家,因此非常感谢您的帮助。谢谢!


如果您想对所有工作簿(每个工作表中的值)求和A1:N1) 并将结果粘贴到A1:N1在本工作簿中,使用这个:

Sub SUM_Workbooks()
    Dim FileNameXls, f
    Dim wb As Workbook, i As Integer

    FileNameXls = Application.GetOpenFilename(filefilter:="Excel Files, *.xl*", MultiSelect:=True)

    If Not IsArray(FileNameXls) Then Exit Sub

    Application.ScreenUpdating = False

    For Each f In FileNameXls
        Set wb = Workbooks.Open(f)
        For i = 1 To 3
            wb.Worksheets(i).Range("A1:N1").Copy
            ThisWorkbook.Sheets(i).Range("A1:N1").PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks:=True, Transpose:=False
        Next i
        wb.Close SaveChanges:=False
    Next f

    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对多个工作簿和多个工作表中的单元格值求和 - 宏 的相关文章

  • 当存储在集合中时,如何更改类属性的值

    我想将一个类存储在集合中 并且能够更改该类的属性 而不必删除集合项并再次将其添加回来 我的研究表明 如果不进行删除 替换操作 则无法更改项目本身 但是项目的属性又如何呢 下面的代码展示了如何执行此操作 当您运行宏时 调试窗口将显示存储对象的
  • 如何VBA等待Windows保存对话框和发送密钥

    我正在创建一个宏文件 用于下载并保存从 SAP 旧版本 7 20 中提取的数据 当出现保存对话框时 未检测到 Windows 对话框 因为我的客户端 SAP 版本是旧版本 7 20 现在我对此的解决方案是发送密钥 但问题是某些数据包含大量数
  • 如何获取 pandas 数据框并覆盖 Excel 工作簿中的特定工作表

    我想获取一个数据框并让它替换特定工作表中的现有数据 假设为sheet1 然后我想获取另一个数据框并将其附加到另一张工作表上的数据 比如说同一工作簿中的sheet2 目前 我必须将数据写入新的 Excel 工作簿 我无法在线找到如何实际替换我
  • 在Excel中显示毫秒

    我正在尝试在 Excel 宏中显示毫秒 我有一列整数 它们是以毫秒为单位的时间戳 例如 28095200 是上午 7 48 15 200 我想在它旁边创建一个新列 以保持运行平均值并以hh mm ss 000格式 Dim Cel As Ra
  • 使用 PHP 代码和 HTML 表单将 Excel (.csv) 导入 MySQL

    我知道还有其他类似的帖子 但每个人都建议直接在 PHPMyAdmin 中将其导入 MySQL 这工作完美 但我需要通过 HTML 表单导入 PHP 到 MySQL 我想要一个收集文件的 HTML 表单 然后将该文件传递给 PHP 脚本 我想
  • Excel ISNUMBER 函数与 IF 语句

    我有一个正在使用的 Excel 文件 有一个列包含数字和文本 有时只是其中之一 我正在尝试编写一个函数来扫描单元格的最左侧部分以查看它是否以数字开头 我以为我拥有它 但显然没有 这就是我所拥有的 IF ISNUMBER LEFT E8 1
  • Excel宏隐藏特定单元格和合并区域

    我试图根据另一个单元格的值隐藏特定单元格 到目前为止 我设法隐藏整行 但无法隐藏特定单元格 Local Currency value show hide item If Range Currency Value USD Then Range
  • excel使用单元格引用作为逻辑运算符并查找值

    我有一个表来查找这样的值 logical test points lt 0 1 lt 10 2 lt 20 4 gt 20 5 如果我的单元格 例如 A1 如果我的单元格 如果我的单元格 gt 20 则结果为 5 我可以为此使用多个 if
  • 通过 Excel VBA 保存并关闭 powerpoint

    下面的代码根据定义的名称创建多个图表 然后打开具有这些定义的名称的 powerpoint 文件并转储到图表中 除了最后一部分之外 一切都正常 保存并关闭文件 我已将尝试保存和关闭文件的尝试标记为绿色 任何帮助表示赞赏 Sub Slide19
  • VB:在 Adob​​e Illustrator、Photoshop 中分配给布尔属性

    在使用 VBA 自动化 Adob e Illustrator CS3 时 我发现分配一个布尔变量 to a 布尔属性结果总是分配 False Dim New Path As Illustrator PathItem Dim v As Boo
  • 在单元格更改时循环遍历一系列单元格,以将序列中的下一个数字显示为单元格的新值

    我了解如何循环范围 For Each cell In Range A1 A5 If condition Then End If Next 我知道 OnChange 事件 Private Sub Worksheet Change ByVal
  • 以独立于区域设置的方式读取 Excel 文件

    我使用以下代码从各种 Excel 文件读取数据 IMEX 1 to force strings on mixed data HDR NO to process all the available data Locale 1033 is en
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 我可以通过 vba 设置 Excel Power Query 的用户名和密码吗?

    我正在尝试设置一个电子表格 供其他人使用 通过 Power Query 更新表 当另一个用户使用电子表格时 他们会被要求 3 次输入用户名和密码 因为我有 3 个表正在更新 如何通过 VBA 为每个用户设置这些 我尝试将连接设置为匿名 但他
  • 如果单元格 = 0,则将范围复制到主表并从主表中删除范围

    有 10 个工作表 工作表 1 工作表 10 其表处于相同范围 C25 G34 和 C42 N51 如果 总重量 列的值 gt 0 则必须复制这些行 复制的行将转到两个汇总表 前往 Westrock 表 gt Westrock 汇总表 前往
  • 在 Excel VBA 中,如何访问存储在已安装的加载项中的子项?

    我已经创建了一个 Excel 加载项 该加载项中有一些模块 假设 module1 是其中之一 在 module1 中 我有一个 sub 声明为 public sub abc end sub 在我的工作簿中 我希望能够使用外接程序中定义的函数
  • excel vba 中的智能卡和 ISO 7816 入门 ( SCardEstablishContext )

    我刚刚收到了标准的便宜货USB 智能卡读卡器 http stanleyglobaltech com sgt111 html 我正在尝试找出如何使用 Excel 中的 VBA 与其进行交互 我在尝试在工作簿中创建基本智能卡功能时编写了此内容
  • 根据关键列合并多个 Excel 工作簿

    我从不同的客户那里收到七个工作簿 xlsx 文件 每个工作簿都有一张工作表 每张工作表至少有一个公共 ID 列 UNIQ PK 其中一本工作簿包含所有可能的 id 列表 其他人可能没有所有 id 的记录 但每一行都定义了 id 值 我需要制
  • VBA MS-Word:是否可以用通配符替换文本?

    是否可以替换使用通配符找到的文本并将其也替换为通配符 例如FindText 13 2 13 Forward True MatchWildcards True 然后用这样的通配符替换它replacewith 13 2 11 是否可以 评论中的
  • 从新的 xlsx 文件中删除宏

    功能部分 下面的代码将 xlsm 文件中的 2 个选项卡保存到新的 xlsx 文件中 文件保持打开状态以进行编辑 错误 xlsm 选项卡在工作表代码中有触发器 该触发器无效 一旦在 xlsx 工作表中输入任何内容 就会导致错误 所需输出 编

随机推荐

  • 如何使用 C 从用户空间获取 Linux 中的驱动器标签

    我需要在 Linux 中使用 c c 并且没有 d bus 获取特定设备的标签 问题是我不能只打开设备并读取它的信息 对于 extN 来说 很容易从设备获取标签 因为从 dev xxx 读取需要 root 权限 我认为现在在大多数发行版中都
  • 从 FullCalendar (jQuery) 中删除事件源时出现问题

    就在那时 我正在使用全日历显示来自多个源的事件 一些是本地 JSON feed 另一些来自 Google Calendar 我实现了一项功能 当复选框分别为 true 或 false 时 可以显示 隐藏单个日历 我正在使用这段代码来实现它
  • 如何从Delphi运行命令行?

    如何从我的 Delphi 应用程序运行此命令 C myapppath appfolder gt appname exe stext save txt 我尝试了以下代码 ShellExecute 0 nil cmd exe cd C myap
  • 在 SetWindowPos() 中获取跨线程操作无效

    我试图从与创建表单的线程不同的线程访问表单 最后出现错误 跨线程操作无效 Code public static void MakeTopMost Form form SetWindowPos form Handle HWND TOPMOST
  • 如何使用许多 OR 替代方案来缩短长 XPath 表达式?

    我正在努力让 Selenium 遍历大量替代条件 XPath 寻找满足以下条件的元素 可能匹配 并将其传递给对象elmnt 目前 使用OR操作员 代码很快就会变得非常重复和详尽 尤其是当存在很多可能的变化时 在下面的示例中 唯一的变化是我开
  • WKWebView确实从本地文档文件夹加载资源

    在我的 Swift iOS 应用程序中 我想从远程服务器下载一些动态 HTML 页面 将它们保存在文档目录中 并从文档目录中显示这些页面 我用它来加载页面 var appWebView WKWebView appWebView loadRe
  • Azure 服务主体可以更新自己的密码吗?

    我需要以编程方式使用 Azure 服务主体 1 添加 删除其他服务主体的密码 以及2 为自身添加 删除密码 1很容易做到 但由于以下错误 我似乎无法执行 2 2可能吗 如何 graphrbac PasswordCredentialsUpda
  • po [NSThread 当前线程]

    当我执行 po NSThread currentThread 时 我得到了 名称 空 数字 4 When I look to the left I see 看起来线程号是 6 而不是 4 另外 我们需要调用哪些属性来获取线程号 NSThre
  • 当方向改变时如何管理应用程序?

    我有一个正在更改屏幕方向的应用程序 但是 当我更改第一个屏幕的方向并转到下一个屏幕时 更改不会持续 附上图片以便更清楚地理解 主要问题是 当设备旋转时 第一个屏幕会旋转 但第二个屏幕不会以新方向启动 仅当我们在屏幕启动后改变方向时它才会旋转
  • 如何在 Python 类中创建增量 ID

    我想为我创建的每个对象创建一个唯一的 ID 这是该类 class resource cl def init self Name Position Type Active self Name Name self Position Positi
  • 全局静态初始化线程

    我有一个用互斥体保护的集合 初始化后 它只能被读取 所以我在那里不需要互斥体 该集合在全局静态初始值设定项中进行初始化和填充 我知道全局静态初始化是在单个翻译单元内保证的 是否可以保证全局静态初始化是单线程的 我有一个受 Schwarz 计
  • 为什么它不转一圈?以及如何修复它?

    我不确定正在创建的形状的名称是什么 但我认为是圆形和方形的组合 或者可能类似于圆柱体 您可以运行代码来查看它会形成什么形状 您能否推荐一个我可以学习编写游戏代码 基本游戏背后的算法 的网站 我希望你明白我的意思 因为我英语不好 import
  • 当 PictureBox 处于“缩放”模式时裁剪图像的正确部分[重复]

    这个问题在这里已经有答案了 我有一个 PictureBox1 其尺寸模式设置为 拉伸 并且 PictureBox1 PictureBox1 包含一个图像 让我选择它的一部分 然后裁剪它并将裁剪的部分存储在 PictureBox2 中 效果很
  • python中浮点精度的定义是什么?

    我了解到 Erlang 中的 完全等于 运算符 它不仅比较值 还有数字的数据类型 我很好奇 Python 中的工作原理及其唯一的 等于 运算符 所以在确定之后 gt gt gt 1 1 0 True 我想知道浮点精度 然后得到了这个 gt
  • 在 PHP 中从空值创建默认对象?

    仅在将 PHP 环境升级到 PHP 5 4 及更高版本后 我才会看到此错误 错误指向这行代码 Error 从空值创建默认对象 Code res gt success false 我是否需要首先声明我的 res object 你的新环境可能有
  • div 中的居中文本

    div div class left div align center class node div class nodeText h2 test h2 div div class node h2 test h2 div div class
  • mod_rewrite后获取变量

    我有一组遵循以下 htaccess 规则的产品页面 RewriteCond REQUEST FILENAME s RewriteCond REQUEST URI 0 9 html RewriteRule product index php
  • Opencv 和 python 用于自动裁剪

    我想自动裁剪图像 我正在为此使用 ImageMagick 我正在使用的命令 convert 3 jpg fuzz 10 trim trim jpg 我该如何解决 我认为正在设置的模糊因子存在问题 If you want to do this
  • 在sp_executesql中使用@ParmDefinition有什么好处

    DECLARE id int DECLARE name nvarchar 20 SET id 5 SET name Paul 这两个选项有什么区别 Set SQLQueryInnen SELECT FROM someTable WHERE
  • 对多个工作簿和多个工作表中的单元格值求和 - 宏

    我有 50 本练习册 每个有 3 个工作表 我在单元格 A1 到 N1 的每个工作表中都有一个值 我想总结一个工作簿中的所有值 分别在 3 个工作表中 即sheet1工作簿1的A1 sheet1工作簿2的A1 sheet1工作簿50的A1