【问题标题】:vba - attaching a file based on cell value and if there is no cell value then no file should be attachedvba - 根据单元格值附加文件,如果没有单元格值,则不应附加任何文件
【发布时间】:2017-08-29 03:45:35
【问题描述】:

我是这个论坛的新手,也是编程新手。 我正在尝试在 VBA 中创建一个 If 条件,如果 excel 文件具有所需的值,则该文件应附有特定的电子邮件,否则不应附加任何文件(如果单元格值为空白)并且应该使用不同的电子邮件出现在电子邮件正文中。

我正在尝试使用“NULL”来表示空白单元格值。对吗?

我的代码示例 -

如果 sheet("Hello").range("A2").value = Null,则 .attachments.remove 别的 .attachments.add "C:\filename.xlsx 结束如果

【问题讨论】:

  • 不,您应该使用If Worksheets("Hello").Range("A2").Value = "" Then,或者更合适的是If IsEmpty(Worksheets("Hello").Range("A2").Value) Then
  • 非常感谢您的帮助.. :) 我使用了 If IsEmpty(Worksheets("Hello").Range("A2").Value) 然后它工作得很好。抱歉,不确定如何在您提供的 cmets 中投票.. 所以写了一条新评论,感谢您的帮助.. :D

标签: excel vba


【解决方案1】:
If Sheets("Hello").Range("A2").Value = Null Then

不是检查空单元格的正确方法。

测试空单元格的方法之一是:

If Worksheets("Hello").Range("A2").Value = "" Then

测试单元格在转换为字符串时是否为空字符串。 (与之等效的语句是

If Worksheets("Hello").Range("A2").Value = vbNullString Then

这可以为您节省几个字节的内存。)

更好的测试方法是使用实​​际的IsEmpty 函数:

If IsEmpty(Worksheets("Hello").Range("A2").Value) Then

测试单元格的值是否具有Variant/Empty的数据类型。

【讨论】:

    猜你喜欢
    • 2021-07-11
    • 1970-01-01
    • 1970-01-01
    • 2021-12-06
    • 2023-02-06
    • 1970-01-01
    • 2019-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多