如何使用 VBA 代码添加新电子表格

2023-12-13

我正在创建一个宏,宏的部分功能是让 VBA 创建一个新的电子表格。由于发行的性质,名称将会改变。我需要向此电子表格添加代码。无论如何我可以做到这一点吗?


乔克已经解释了它是如何工作的。我会更进一步。

添加工作表的语法是

expression.Add(Before, After, Count, Type)

如果你检查内置的 Excel 帮助,你可以看到什么Before, After, Count, Type代表

来自 Excel 的帮助

参数 (所有 4 个参数都是可选的)

  1. Before- 指定在其之前添加新工作表的工作表的对象。
  2. After- 一个对象,指定在其后添加新工作表的工作表。
  3. Count- 要添加的页数。默认值为一。
  4. Type- 指定图纸类型。可以是以下 XlSheetType 常量之一:xlWorksheet, xlChart, xlExcel4MacroSheet, or xlExcel4IntlMacroSheet。如果要插入基于现有模板的工作表,请指定模板的路径。默认值为 xlWorksheet。

创建工作表后,您需要使用.insertlines创建相关过程并嵌入您想要运行的代码。

注意-IMP:如果你想让代码在VBA项目中嵌入代码,你需要确保你有“信任对 VBA 项目对象模型的访问” 已选择。请参阅快照。

enter image description here

这是一个示例,其中我创建一个工作表,然后嵌入一个Worksheet_SelectionChange将显示消息“Hello World”的代码

代码 - 经过尝试和测试

Option Explicit

Sub Sample()
    Dim ws As Worksheet
    Dim nLines As Long
    Dim VBP As Object, VBC As Object, CM As Object
    Dim strProcName As String

    Set ws = Worksheets.Add

    Set VBP = ThisWorkbook.VBProject
    Set VBC = VBP.VBComponents(ws.Name)
    Set CM = VBC.CodeModule

    strProcName = "Worksheet_SelectionChange"

    With ThisWorkbook.VBProject.VBComponents( _
    ThisWorkbook.Worksheets(ws.Name).CodeName).CodeModule
        .InsertLines Line:=.CreateEventProc("SelectionChange", "Worksheet") + 1, _
        String:=vbCrLf & _
        "    Msgbox ""Hello World!"""
    End With
End Sub

这就是运行上述代码后新工作表代码区域的外观。

enter image description here

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

如何使用 VBA 代码添加新电子表格 的相关文章

  • 根据当前工作簿中的匹配值编辑主工作簿中的单元格

    这里的目标是比较两个工作簿之间 A 列中的值 当前工作簿是 xlsm 目标工作簿是 xlsx 如果找到任何匹配项 匹配值同一行的 E 列中的值在目标工作簿中发生更改 在这种情况下 必须将工作簿分开 我决定通过选择当前工作簿 A2 中的第一个
  • 更改列标签?例如:将“A”列更改为“名称”列

    谁能告诉我如何更改列标签 例如 我想将列 A 更改为列 名称 Excel Excel 的版本是什么 一般来说 您无法更改列字母 它们是 Excel 系统的一部分 您可以使用工作表中的一行来输入您正在使用的表格的标题 表标题可以是描述性列名称
  • 使用VBA复制垂直列并沿对角线粘贴

    我有一列数据 我们称之为 A 列 其中有 35 行数据 如何在此列上循环 然后将每个数据点粘贴到另一张工作表中 同时为每个循环循环增加列和行 换句话说 我寻求对角粘贴在第二张纸中 有没有一种简单的方法可以在 VBA 中执行此类操作 不要循环
  • 如何将 JavaScript 图表导出到 Excel 文件 (HighCharts)

    我必须将 Javascript 图表 HighCharts 导出到 Excel 文件中 图表在div中呈现 但excel不呈现javascript生成的html css内容 仅呈现没有样式的文本 一个解决方案是将图表渲染为图像 jpeg 但
  • VBA 激活 Internet Explorer 窗口

    我正在制作一个宏 用于打开 Internet Explorer 导航并登录网站 一切正常 但我需要将 IE 窗口放在前面并激活它 这样我就可以使用SendKeys在上面 我发现网站和视频在名为的命令上有不同的方法AppActivate我已经
  • 使用 R Shiny 从 XLConnect 下载 Excel 文件

    有没有人尝试过使用 R Shiny 中的下载处理程序通过 XLConnect 下载新创建的 Excel 文件 在 ui R 中有一行不起眼的行 downloadButton downloadData Download 在 server R
  • 文本到行 VBA Excel

    我有一个电子表格 其中包含大约 4000 行数据 其中一列数据具有唯一的订单号 我希望使用 作为分隔符将其分隔 所以本质上我想要 Name Order Date Jane 123 001 111 08 15 2013 Gary 333 12
  • 运行代码(而不是查询)时如何在状态栏上显示进度

    我已经发布了有关在 MS Access 2010 中运行查询时更新状态栏的问题 请参阅在 MS Access 中运行一系列查询时如何在状态栏上显示进度 https stackoverflow com questions 27765376 h
  • 如何模拟“焦点”和“打字”事件

    尝试模拟 onfocus 和打字事件 但它不起作用 Sub Login MyLogin MyPass Dim IEapp As InternetExplorer Dim IeDoc As Object Dim ieTable As Obje
  • xlwings: 删除一个列 | Excel 中的行

    如何删除 Excel 中的一行 wb xw Book Shipment xlsx wb sheets Page1 1 range 1 1 clear clear 用于删除内容 我想删除该行 我很惊讶 clear 函数有效 但 delete
  • excel 2010刷新BackgroundQuery中运行时错误1004

    我正在尝试用 vba 编写一个脚本 用于将多个文本文件导入 Excel 一张纸 然后将它们绘制在一张图表上 我面临一个问题刷新后台查询命令并出现 1004 运行时错误 我怎样才能解决它 谢谢 埃亚勒 这是我的代码 Sub fring1 Di
  • VBA 有没有办法了解未使用的变量?

    标准 VBA 编辑器中是否有工具 方法或设置来警告已被修改的变量Dim med 但没有被使用 MZ Tools http www mztools com index aspx将搜索您的代码并告诉您哪些内容未被使用 VBA的版本可以找到her
  • 使用 ObjPtr(Me) 返回自定义类实例的名称?

    我明白那个ObjPtr http support microsoft com kb 199824将返回内存中对象的地址 并且它指向一个名为 IUNKNOWN 的结构 并且其中编码了某种接口定义以公开对象结构 但我不知道如何确定一个对象的接口
  • JasperReports 中每个工作表属性一页

    我有一个要求 我必须在 JasperReports 中设计一个报告 该报告有 4 页 第一张纸有 5 页 类似的其他纸有一页或两页 我面临的问题是 如果我使用net sf jasperreports export xls one page
  • 我可以获取VBA代码中的注释文本吗

    可以说我有以下内容 Public Sub Information TEST End Sub 有没有办法得到 TEST 结果 不知何故通过VBA 例如 在 PHP 中 有一个获取注释的好方法 这里有什么想法吗 编辑 应该有办法 因为像 MZ
  • VBA 中 AND 函数如何工作?

    如果这是一个愚蠢的问题 我很抱歉 但是 Excel VBA AND 函数是否检查其中的每个条件然后继续 或者在第一个 FALSE 条件处停止而不检查其他条件 我想知道出于优化目的 但到目前为止在网上没有找到任何相关信息 提前致谢 示例 如果
  • VBA 中的匈牙利语好吗?

    我在 Net 中不使用匈牙利语 str int 前缀 但我仍然发现它在 VBA 中很有用 因为在 VBA 中很难看到类型 这很糟糕吗 不必要 也许我错过了一些东西 我真的很感激任何反馈 我想知道有一段时间了 谢谢大家 我想说 这种匈牙利符号
  • VBA ByRef 参数类型不匹配

    最初在我的主代码部分中 我有一个丑陋的 if 语句 尽管它会运行丑陋 我决定将其设为我要调用的函数 这导致我收到错误 编译错误 ByRef 参数类型不匹配 我的假设是该函数需要正确引用 尽管我一直在阅读文档并且不明白为什么 gt 声明 Sh
  • Excel 数字缩写格式

    这是我想要完成的任务 Value Display 1 1 11 11 111 111 1111 1 11k 11111 11 11k 111111 111 11k 1111111 1 11M 11111111 11 11M 11111111
  • 如何在Power Query中对N列求和

    我的数据每月都会更新 因此我尝试创建一个强大的查询表 该表将显示我创建的枢转 N 列的总和 但我似乎不知道如何在强大的查询中执行此操作 我目前有这个代码 旋转后 创建要求和的列的列表 添加索引列以限制每行 添加一列 该列对该行的列进行求和

随机推荐

  • 自 Rails3 升级以来对空 params[] 哈希进行故障排除

    我有一个命名路由 可以在控制台中正确测试并显示应该包含在 params 中的 url title 但 params 始终为空 问题是 为什么 params 为空 我的期望是它应该有 params url title 我还删除了这条路线并使用
  • 致命:需要一次修改

    我的仓库有 3 次提交 我想压缩为一 I ran git rebase i HEAD 3并得到这个错误 fatal Needed a single revision invalid upstream HEAD 3 我能够跑git rebas
  • 创建一个包含 R 中多个矩阵的平均值的矩阵[重复]

    这个问题在这里已经有答案了 我有多个具有相同尺寸的矩阵 如下所示 gt A x y z 1 2 4 3 2 1 5 7 gt B x y z 1 4 3 3 2 1 8 7 gt C x y z 1 4 3 3 2 1 8 7 gt 如何创
  • VBA listobject不会添加行

    我有一个带有几张表的工作表 每张表都有两个表 listobjects 我还有一个用户窗体 允许用户在表中添加 编辑 删除行 这些表是静态的 这意味着它们永远存在并且永远不会被删除 它们位于同一位置并且永远不会移动 我还以不同的方式 通过索引
  • 分层抽样 - 观察不足

    我想要实现的是从每组中获取 10 的样本 这是 2 个因素的组合 新近度和频率类别 到目前为止我已经考虑过包裹sampling和功能strata 这看起来很有希望 但我收到以下错误 并且很难理解错误消息以及错误所在或如何解决此问题 这是我的
  • 如何卸载新 WooCommerce 2.3.x 加载的 select2 脚本/样式?

    我们是主题开发人员 我们已经使用 select2 http select2 github io 我们的 WordPress 主题中 HTML 中的 SELECT 框的脚本 刚刚发布的新 WooCommerce 2 3 x 现在也使用 sel
  • MSChart / Asp.net 图表不显示工具提示

    我有一个仪表板页面 我在其中使用各种 MSCharts 我为每个图表定义了一个类 当我运行每个图表类并定义其系列属性时 我在该图表中定义系列的工具提示 如下所示 Series 0 ToolTip Date VALX d nTotal Qty
  • ICommand CanExecuteChanged 未更新

    我正在尝试 MVVM 模式基础级别 并对 ICommand CanExecute 更改感到震惊 我的 XAML 绑定如下
  • 调整图像亮度

    对于 Windows Phone 应用程序 当我通过滑块调整亮度时 它工作正常 将其移至右侧 但是当我回到之前的位置时 图像不是变暗 而是变得越来越亮 这是我基于像素操作的代码 private void slider1 ValueChang
  • SQL / MySQL - 按列长度排序

    在 MySQL 中 有没有办法按列的长度 字符 对结果进行排序 例如 myColumn lor lorem lorem ip lorem ips lorem ipsum 我想首先按最小的列长度 lor 对结果进行排序 然后以最大的列长度 l
  • 为什么析构函数挂起

    下面的代码工作正常 但是 当我启用p b in GetValue 代码失败 调试断言失败 为什么 class A int p public A p nullptr A if p nullptr delete p void GetValue
  • 如何为 json 负载定义 swagger 注释

    如何为此示例定义 swagger 注释 API TenantConfiguration 作为 json 负载获取 Consumes application json application xml POST public Message c
  • 本地主机上跨子域的用户身份验证

    我正在我的本地主机上构建一个应用程序 当我通过一个子域 例如 sub localhost 登录时 我需要在应用程序的所有其他子域 例如 sub2 localhost sub3 localhost 中使用 Auth 访问该登录用户 我将其更改
  • Pandas 风格:在整行上绘制边框,包括多索引

    我在 jupyter 笔记本中使用 pandas 样式来强调此数据框中子组之间的边界 从技术上讲 在每个更改的多重索引处绘制边框 但忽略最低级别 some sample df with multiindex res np repeat re
  • wordnet getDict() 找不到 Wordnet 词典

    当使用以下代码使用 WordNet 中的 Lemmatizer 算法时 gt initDict C Program Files x86 WordNet 2 1 dict 1 TRUE if initDict C Program Files
  • 在 Python 中将多字节字符转换为 7 位 ASCII

    我正在通过 Python 脚本下载并解析网页 我需要它 被编码为 7 位 ASCII 以便进一步处理 我正在使用 请求库 http docs python requests org en master 在一个 virtualenv 基于 U
  • 如何在 ListView 中访问 WebView 的 NavigateToString 属性

    我有一个ListView除其他外 其中包含WebView 当一个ListViewItem在此列表中被选中 我想将 HTML 绑定到WebView通过NavigateToString方法 WebView 需要位于绑定列表中 因为它绑定到项目列
  • 将本地 PDF 文件加载到 WebView 中

    我正在尝试将以下功能放入我正在编写的 iOS 应用程序中 在 XCode 中的项目的资源文件夹中发送一组 PDF 将 PDF 复制到应用程序目录 在网络视图中打开 PDF 据我所知 前两个步骤工作正常 我在复制操作后使用 FileManag
  • 使用 WPF WriteableBitmap.BackBuffer 绘制线条

    您是否知道任何库提供使用 WPF WriteableBitmap 和理想情况下 BackBuffer 绘制简单形状 线条和可选的其他形状 的方法 我知道有一个针对 silverlight 的 WriteableBitmapEx 项目 但是有
  • 如何使用 VBA 代码添加新电子表格

    我正在创建一个宏 宏的部分功能是让 VBA 创建一个新的电子表格 由于发行的性质 名称将会改变 我需要向此电子表格添加代码 无论如何我可以做到这一点吗 乔克已经解释了它是如何工作的 我会更进一步 添加工作表的语法是 expression A