问题描述
我有一个表单模板,用户填写后通过电子邮件发送给部门以提出请求,我混合使用了 IF 函数和条件格式,以便表单根据用户输入隐藏/显示字段。
我的问题是,当用户按下按钮通过电子邮件发送表单时,已显示(以前隐藏)的字段没有表格边框,即使在电子表格中显示但不在电子邮件中显示。
我使用了下面链接的教程中的代码:
https://www.excell-en.com/auto-email-macro-excel
这是它应该如何显示(如在 excel 中所示)
Excel view
这是电子邮件中的结果:Email view
如果可能的话,我想让电子邮件看起来与它在 excel 中的显示完全一样
任何想法或帮助将不胜感激
解决方法
我只是将单元格边框重新应用于这些单元格
并重新触发电子邮件,这是输出
编辑
花了一些时间后发现出了什么问题。问题在于条件格式。 VBA 代码创建一个临时表并复制所有数据和条件格式。但是,单元格引用是错误的,如下所示
为了使单元格引用正确,我用 A1 开始了愤怒
Set rng = Sheets("Division_Extensions").Range("A1:C20").SpecialCells(xlCellTypeVisible) '
现在,单元格引用是正确的,因此条件格式可以正常工作
编辑 2:从单元格添加主题阅读数据
-
在某些单元格中添加主题,例如我在工作表“数据验证”第 7 行和 C 单元格中添加了
-
从该单元格中读取数据并在 VBA 代码中赋值
.subject = Sheets("数据验证").Cells(7,3)