VBA 中作为类成员的类对象数组

2023-11-24

我正在用 VBA 编写一个 Excel 宏,向图书馆顾客发送电子邮件,提醒他们逾期的资料。数据来自电子表格,其中包含以下数据

UserID   Name        Email      Title    Author     Barcode Call Number Borrowed Date   Due Date
user2   Jones, Bob   bob@jones  Title1  A. Baker    a0001   H00027C     11/23/2014      1/1/2015
user2   Jones, Bob   bob@jones  Title2  C. Dalton   b0002   S00406R     11/23/2014      1/1/2015
user3   Smith, Mary  bob@jones  Title3  E. Franklin c0003   M00174R     11/23/2014      1/1/2015
user3   Smith, Mary  mary@smith Title4  F. Gelt     d0004   M00157G     11/23/2014      1/1/2015
user3   Smith, Mary  mary@smith Title5  H. Ivers    e0005   M00081G     11/23/2014      1/1/2015

我从用户定义的书籍和顾客类型开始,并为每个顾客提供了一系列书籍。我尝试将顾客传递给函数来生成电子邮件文本,但显然我无法将用户定义的类型作为参数传递。所以,现在我正在尝试上课。

我想要一个Book与会员一起上课

Public book_title As String
Public date_borrowed As Date
Public date_due As Date
Public barcode As String
Public call_number As String

and a EmailData与会员一起上课

Public email_text As String
Public patron_name As String
Public patron_email As String
Public sender_email As String
Public book_list() As Book

where book_list是一个数组Book对象和方法sendEmail().

但是,这不起作用,因为显然我无法定义数组Book对象作为 an 的成员EmailData目的。

那么,我的方法是什么?我听说过收藏。这会是一个解决方案吗?


根据我的评论,我会使用一个集合。这是定义和初始化它的方法

Public book_list As Collection

'intitalize the collection in the constructor of the class
Private Sub Class_Initialize()
    Set book_list = New Collection
End Sub

并使用它

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

VBA 中作为类成员的类对象数组 的相关文章

  • EPPlus Excel 行高不一致

    我已经使用 EPPlus 生成了一个 excel 文件 在 MS Office 2007 中一切似乎都很完美 但客户端使用的是 MS Office 2010 2013 并且在第 29 行之后未设置行高 这是一个非常奇怪的问题 我已经尝试了
  • VBA 字符串 255 个字符限制

    我在使用 VBA 时遇到问题 并注意到它的字符串限制为 255 个字符 我实际上正在尝试通过 POST 发送 JSON 并暂停执行 我注意到该字符串始终只有 255 个字符 有没有办法调整字符串的大小或其他什么 我在这个问题上浪费了大约 6
  • 文件夹.文件的相对路径

    我有一个 Excel 文件 在同一文件夹中还有一个包含我想要包含的 CSV 文件的文件夹 使用 来自文件夹 查询 第一步将给出以下查询 Folder Files D OneDrive Documents Health Concept2 现在
  • 在 MS Word 中运行外部 vba 代码

    我可以将外部代码链接到 Word 文档吗 我有很多带有宏的 Word 文档 VBA 代码 全部使用相同的代码 我希望代码从外部源运行 而不是从所有这些文档中运行 这样 如果我必须更新代码 我只有一个地方需要更新 您可以创建一个模板并将其放入
  • SpreadsheetML 文件扩展名被 IE 和 FF 更改 - 内容类型错误?

    我正在 PHP 中生成 SpreadsheetML 文件 当用户下载文件并保存时 默认情况下文件会另存为 Report xml 并在 Excel 中打开 但是 如果选择在 Excel 中打开文件而不是保存文件 则文件名将更改为 Report
  • Java Microsoft Excel API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • VSTO 替代方案 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 VSTO 有哪些替代方案 ManagedXll 能做什么而 VSTO 不能 你什么时候使用其中一个而不
  • Excel 工作表名称的有效字符

    在 Java 中 我们使用以下包以编程方式创建 Excel 文档 org apache poi hssf 如果您尝试设置工作表的名称 不是文件 而是内部 Excel 工作表 在以下情况下您将收到错误消息 名称超过 31 个字符 该名称包含以
  • Redim Preserve 给出“下标超出范围”

    我想要Redim Preserve一个数组我不断收到错误 下标超出范围 我知道只有最后一个维度的大小可以更改 这正是我正在做的事情 这里出了什么问题 数组的类型是Variant BmMatrix Sheets BENCH Range a60
  • 使用 ClosedXML 创建数据透视表

    我正在尝试使用 ClosedXML V0 91 1 创建数据透视表 但我不断遇到问题 因为我的 Excel 文件包含不可读的内容 然后 Excel 工作簿在单击时删除了我的数据透视表Yes below 下面是我击中时的显示Yes 它正在删除
  • 使用 VBA 将 Excel 电子表格中嵌入的 Word 文档保存到磁盘

    我们有一个 Excel 电子表格 当前使用存储在公司 LAN 上的 Word 模板生成报告 这对于内部用户来说效果很好 但对于没有连接到 LAN 的任何人来说就不行了 例如 笔记本电脑用户 管理层不希望将模板作为单独的文件分发给外部用户 而
  • 返回条件格式化单元格内部颜色的函数

    我想要一个返回条件格式单元格颜色索引值的函数 它用于检查一行中的多个单元格 如果它们使用条件格式突出显示 则需要执行操作 检查单元格中是否有颜色比创建覆盖条件的组合条件公式更简单所有细胞的 或者说我是这么想的 尽管代码在消息框中有效 但下面
  • VBA 架构技巧 - 宏封装

    我拼凑了 Excel 的概念证明 以从数据库获取数据 并需要将其打包 以便可以将其分发给我们的客户 我的第一次尝试只是将所有代码放入代码模块中 但随后在 Excel 中我可以看到宏列表中的所有模块 而我实际上只想要列表中的主要模块 我猜想我
  • Powershell - 在不安装 Excel 的情况下将 CSV 转换为 XLS

    我有一台自动生成报告的服务器 报告采用 CSV 格式 我需要能够直接加密文件 无需第三方压缩 无 WinZIP 或 WinRAR 我认为最好的想法是将 CSV 转换为 XLS 然后通过 Powershell 密码保护 XLS 文件 不幸的是
  • Excel - 在一列中查找重复项,然后将数量求和到另一列中?

    查找一列中的重复项 然后将数量求和到另一列中 https i stack imgur com AADjd png DATA RESULT A 1 A 11 A 1 B 7 A 9 C 5 B 2 D 4 B 2 E 8 B 3 C 5 D
  • 替换字符串变量中的多个字符 (VBA)

    如何替换字符串变量中的多个内容 这是我在 VBA 中的示例函数 Private Function ExampleFunc ByVal unitNr As String If InStr unitNr OE gt 0 Then unitNr
  • VBA Excel:将范围值分配给新范围

    我在将一个工作簿范围中的值分配给当前工作簿中的某个范围时遇到问题 当我使用 Range A1 C1 分配我的范围时 此代码工作正常 但是当我使用 Range Cells 1 1 Cells 1 3 定义我的范围时 该函数会失败 Sub Co
  • 在 powershell 中打开 Excel 时出错

    我需要用以下命令打开 Excel 文件CorruptLoad来自 powershell 脚本的参数 但是当我尝试做到这一点时 出现错误Exception calling Open with 15 argument s open method
  • 如何修复日期过滤器 VBA,因为它没有拾取我范围内的所有日期

    我正在尝试创建一个过滤器来过滤掉我选择的日期内的所有日期 我选择的日期将始终反映整个月 例如 如果我需要 2019 年 5 月的数据 我将输入开始日期为 01 05 2019 结束日期为 31 05 2019 我的数据过滤器将需要选取经过我
  • 如何使用 php 将 *.xlsb 转换为数组或 *.csv

    我正在尝试转换 xlsb文件到php array or csv文件 或至少 xls 我尝试使用PHPExcel 但看起来它无法识别该文件中的内容 我注意到 你可以重命名 xlsb文件到 zip文件 然后使用命令行解压缩unzip zip 之

随机推荐

  • 我可以阻止 iOS 用户更改日期和时间吗?

    我想为公司员工部署托管 iOS 设备 他们将使用的应用程序将为数据添加时间戳 这些数据将在本地记录 然后转发 我需要这些时间戳是正确的 因此我必须防止用户调整设备上的时间 记录值 然后重置日期和时间 日期和时间将配置为自动来自网络 但设备可
  • Android 推送通知未使用 webview 打开我的活动

    我按照本教程创建了一个推送通知应用程序 http www vogella com articles AndroidCloudToDeviceMessaging article html 它有效 当我收到通知时 我可以打开一个网站 但是 我可
  • 实时聊天并带有推送通知

    我正在为我的网站开发私人消息传递功能 有没有办法从服务器获取用户已收到新消息的推送通知 我知道的唯一技术是通过 ajax 不断轮询服务器以查看是否有新消息 并在需要时重新加载消息窗口 感谢您的任何反馈 UPD 到目前为止 已经确定了以下方向
  • 使用 @EmbeddedId 在复合键上通过 @GenerateValue 生成 NULL ID

    尝试通过 Spring Data JPA 在具有组合键 长整型和日期 的表中保存一行 组合键的 Long 部分是 GenerateValue 但在进行基本操作时出现以下错误save call org hibernate id Identif
  • Ruby on Rails:/bin/sh:rspec:找不到命令

    我目前正在学习 Michael Hartl 的 RoR 教程 并且在尝试运行 Spork 和 Guard 时陷入了第 3 章 当尝试运行测试时 我得到 bin sh rspec command not found 是的 我确实四处寻找答案
  • 今天 8:21 推送后,dialog/oauth API 出现错误 500

    我们的应用程序在此调用中收到错误 500 有谁知道有什么问题吗 有一个解决方法 只需将 www facebook com 替换为 m facebook com Facebook 似乎已经放弃了对旧 API KEY 的支持 如果您查看应用程序
  • 显示名称属性与显示属性

    有什么区别DisplayName属性和DisplayASP NET MVC 中的属性 DisplayName设置DisplayName在模型元数据中 例如 DisplayName foo public string MyProperty g
  • Jquery 中的鼠标事件

    基本上 我有这个带有左右箭头按钮的图像 该图像默认是我从某些 gif 中提取的第一帧 原始 gif 包含 31 帧 我的目标是当用户单击向右箭头按钮时 我想显示下一帧等等 一切都运行良好 如下面的代码所示 但是 我需要添加一些鼠标按住事件
  • 保存网页以供离线使用并调用相同的 android

    我有一个 Android 应用程序要求 我需要打开保存的网页 如何做同样的事情 首先 我们如何保存一个网页及其对Android的依赖 然后在您的应用程序中打开它 任何输入都会有很大帮助 首先我们先保存一下网络档案 from webview
  • 仅返回 Task 而不是 Task 的方法会返回什么?

    我从什么返回D4 async static Task D4 Console Write Enter the divisor var n int Parse Console ReadLine Console WriteLine 24 n To
  • 使用flask-bcrypt生成和验证密码哈希

    所以我最近学习了如何在数据库中存储密码 即通过向明文密码添加盐 对其进行散列 然后存储散列 我正在开发一个非常小的 Flask 应用程序来尝试所有这些 但我在密码散列和检查过程的部分方面遇到了问题 似乎我最终得到了相同输入的两个不同的哈希值
  • Postgresql 中 SQL Server 的“stuff”和“for xml path('')”

    我正在将一些 SQL Server 2008R2 查询迁移到 Postgresql 9 0 但遇到了一些问题 这是 SQL Server 查询 stuff select p NAME as data from BPROVIDERS PROV
  • Android 网络库的比较:OkHTTP、Retrofit 和 Volley [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 一位正在学习 Android 的 iOS 开发人员提出的问题分为两部分 在iOS上我用过AF网络项目广泛 Android 有等效的库吗 我读过OkH
  • Firestore如何存储对文档的引用/如何检索它?

    我是 Firestore Firebase 的新手 我正在尝试创建一个新文档 其中一个字段是document reference到其他文档 我已阅读 Firebase 的所有指南和示例 但没有找到任何内容 另外 当我检索我创建的文档时 我将
  • 使用 webpack 2 和 vue-cli 加载本地字体

    我正在使用 vue cli webpack 模板 并尝试在我的项目中加载本地字体 我无法正确获取字体路径 我的道路应该是什么样子 我发现了一些关于我可能做错了什么的信息 但我无法弄清楚 https github com webpack co
  • 从 RGB 值数组中(就地)切片平面的算法

    我有一个字节 RGB 值的平面数组R1 G1 B1 R2 G2 B2 R3 G3 B3 Rn Gn Bn 所以我的数据看起来像 char imageData WIDTH HEIGHT 3 但我想将 WIDTH HEIGHT 数组传递给需要该
  • 带有类加载器的 Java 示例

    我有一个小问题 我学习java SE并找到类ClassLoader 我尝试在下面的代码中使用它 我正在尝试使用 URLClassLoader 在运行时动态加载类 URLClassLoader urlcl new URLClassLoader
  • 正则表达式选择引号之外的字符

    我想找到一个正则表达式来挑选出引号集之外的所有逗号 例如 foo gt bar foofoo gt bar bar 这将在第 1 行之后挑选出单个逗号 bar 我真的不关心单引号和双引号 有人有什么想法吗 我觉得预读应该可以做到这一点 但我
  • PHP 中 Skype 名称的正则表达式

    我想在 PHP 中使用正则表达式验证 Skype 名称 NOTE 它必须介于 6 32 个字符之间 以字母开头 并且仅包含字母和数字 不含空格或特殊字符 这个模式应该适合你 a zA Z a zA Z0 9 5 31 这将匹配一个前导字母
  • VBA 中作为类成员的类对象数组

    我正在用 VBA 编写一个 Excel 宏 向图书馆顾客发送电子邮件 提醒他们逾期的资料 数据来自电子表格 其中包含以下数据 UserID Name Email Title Author Barcode Call Number Borrow