SentOnBehalfOf 在 Excel 2010 VBA 代码中不起作用

2023-11-30

我正在编写一个用于通过 Excel 2010 中的 Outlook 进行邮件发送的 VBA 脚本。一切运行良好,但有一个例外:.SentOnBehalfofName 行将不起作用。这是完整的代码

 Sub Mail()
' Working in Office 2010-2013
    Dim OutApp As Outlook.Application
    Dim OutMail As Outlook.MailItem
    Dim strbody As String ' This is for the Body of the email
    Dim signature As String ' This is for the email signature

On Error Resume Next

'Set OutMail = Nothing
'Set OutApp = Nothing


Dim sh As Worksheet
Set sh = Sheets("Mail")
strbody = sh.Range("C9").Value


Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
    With OutMail ' This inserts the email signature
        .Display
    End With
       signature = OutMail.HTMLBody

With OutMail
    '.Display
    .To = sh.Range("C5")
    .CC = sh.Range("C6")
    .BCC = sh.Range("C7")
    .Subject = sh.Range("C8").Value
    .HTMLBody = "<br>" & strbody & fncRangeToHtml(sh.Range("C13").Value, sh.Range("C14").Value) & signature
    .SentOnBehalfOfName = sh.Range("C4").Value
    .Display

End With

On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing

 End Sub

如果我删除此部分,.SentOnBehalfOf 可以工作,但我会丢失签名行:

Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
    With OutMail ' This inserts the email signature
        .Display
    End With
       signature = OutMail.HTMLBody

如果我把它放回代码中,我会恢复我的签名行,但我失去了代表另一方发送的能力。

我正在寻找一种可以同时实现这两点的解决方案。任何帮助,将不胜感激。


这是我的解决方案。我需要将.SentOnBehalfOfName 移至WITH 命令中的第一个语句,然后立即将.Display 移至其后。我将签名行的字符串替换为 .HTMLBody 以拉入签名行。代码现在运行良好!

我不知道为什么这些语句需要按这个顺序,但它有效......

Sub Mail()
' Working in Office 2010-2013
Dim OutApp As Outlook.Application
Dim OutMail As Outlook.MailItem
Dim strbody As String ' This is for the Body of the email

On Error Resume Next

'Set OutMail = Nothing
'Set OutApp = Nothing

Dim sh As Worksheet
Set sh = Sheets("Mail")
strbody = sh.Range("C9").Value


Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
    .SentOnBehalfOfName = sh.Range("C4")
    .Display
    .To = sh.Range("C5")
    .CC = sh.Range("C6")
    .BCC = sh.Range("C7")
    .Subject = sh.Range("C8").Value
    .HTMLBody = "<br>" & strbody & fncRangeToHtml(sh.Range("C13").Value, sh.Range("C14").Value) & .HTMLBody

End With

On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing

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

SentOnBehalfOf 在 Excel 2010 VBA 代码中不起作用 的相关文章

  • 如何使用 VBA 忽略范围内的绿色三角形错误,而不逐个单元循环?

    我有一些正在自动化和分发的大型数据集 我想消除警告用户有关存储为文本的数字的绿色小三角形 我使用了以下代码 但在大量纸张上速度非常慢 Range Cells 1 1 Cells lastrow lColumn Select kill tho
  • Python(openpyxl):将数据从一个excel文件转移到另一个(模板文件)并用另一个名称保存,同时保留模板

    我有一个templateexcel 文件名为template xlsx其中有许多张 我想从单独的地方复制数据 csv文件到第一页template xlsx 命名为data 并将新文件另存为result xlsx同时保留原来的模板文件 我想粘
  • VBA 代码基准测试

    对 VBA 代码进行基准测试最准确的方法是什么 在我的例子中 我正在 Excel 中测试代码 除了下面的 2 种之外 还有其他对代码进行基准测试的技术吗 如果有 该方法的优点 缺点是什么 这里有两种流行的方法 First Timer Sub
  • 如何使用VBA删除工作簿中的空白工作表?

    Sub delete Dim sh As Worksheet wb As String c As Range wb InputBox work book name Set sh Workbooks wb Sheets For Each Sh
  • 在 XSSF 工作簿上设置密码保护

    我想为使用 poi 3 14 创建的 xlsx 文件添加密码保护 该文档声称 这是可能的 http poi apache org cryption html http poi apache org encryption html 使用我尝试
  • Excel VBA 将范围值复制到数组,

    我有以下代码摘录 我试图将一系列值复制到声明的数组上 但它一直给我 无法分配给数组 错误 Dim permittedCurve 0 To 7000 As Variant permittedCurve activeWorkbook Works
  • 如何循环浏览文件夹内所有工作簿中的所有工作表

    我使用宏对计算机上给定文件夹中每个工作簿的每张工作表进行更改 事件顺序 打开用户选择的文件夹中的每个 Excel 文件 在工作簿中的每个工作表上执行任务 保存文件 关闭工作簿 宏不起作用 问题似乎是由Selection AutoFilter
  • 是否有 R 函数可以将这些数据从长形重塑为宽形?

    数据现在看起来如何 Coach ID Student score 1 A 8 1 B 3 2 A 5 2 B 4 2 C 7 看起来像这样 Coach ID Student score student 2 score 2 student 3
  • MS Excel 对于每个循环:插入行

    我有一个包含 242 行的工作表 我想在每个现有行下面创建一个新行 相反 我的代码在第 1 行下方创建了 242 行 我花了整个下午的时间在 Google 和 Stack Overflow 上 尝试了各种想法 但遇到了同样的问题 这是我的代
  • 遍历 Excel 工作表

    这是我的代码 我是 VBA 新手 所以我不确定如何迭代多个页面 这是我的代码 Dim ws As Worksheet Sub spellCheck For Each ws In ActiveWorkbook Worksheets Cells
  • Excel 对象库文件在哪里

    我正在寻找 Excel 对象库文件以将其导入 LabVIEW 我安装了 MS Office 2013 可以找到 MSACC olb MSOUTL olb MSPPT olb 和 MSWORD olb 但无法确定要导入哪个文件 olb 或 d
  • Excel VBA 公式德语/法语/意大利语/俄语/荷兰语/外国函数

    当我将数据添加到工作簿时 需要将公式从较早的单元格复制到新单元格 我使用以下公式来计算我的增长率 WENN ODER K9 L9 WENNFEHLER L9 K9 K9 由于这非常耗时 我想用宏来改进它 因此编写了以下代码 Sub Grow
  • 如何以可读的方式重写Excel公式?

    我有一个 Excel 文件 其中包含以下公式 IF OR ISERROR G16 ISERROR G17 X16 IF OR G16 xxx G16 yyy G16 zzz Y16 IF G16 333 N A IF G17 333 Z16
  • GetActiveObject() 与 GetObject() -- MK_E_UNAVAILABLE 错误

    All 我在将一些 VBA 代码转换为 C 时遇到一些问题 我们有一个充当本地 COM 服务器的第 3 方应用程序 在我们使用的VBA代码中获取对象 获取对现有对象的引用 e g Set appHandle GetObject ProgId
  • Excel vba 创建范围的所有可能组合

    我有一个问题 我无法在网络上的任何地方找到它 它可能在那里 但我找不到它 呵呵 我有一个包含 13 列数据的电子表格 每列都包含需要进入整体测试用例的参数的变体 它们都不同 比如 E 101 105 110 120 J Upper S上行L
  • Excel VBA 根据条件通过电子邮件发送每一行

    我正在尝试得到这个 因此 发送如下所示的电子邮件 然后就变成这样 我需要它跳过空白电子邮件地址 在发送时将已发送插入到第五列 并在有可用电子邮件时为每一行创建一封新电子邮件 新电子邮件需要与该单独行相关的特定信息 我正在使用 Ron de
  • C# - 如何迭代 Excel._Worksheet 中的所有行?

    我希望以编程方式从 Excel 工作表中提取数据并将其插入数据库表中 如何确定工作表中的列数和行数或以其他方式迭代行 I have Excel Worksheet worksheet Excel Worksheet workbook Act
  • 在 Excel 中将多组列相互叠置

    所以我有多组 3 列 每组始终采用相同的列顺序 SKU 销售 日期 我想知道是否有 VBA 脚本或其他方法可以执行以下操作 1 Copy G I 2 Paste into A C 3 Copy J L 4 Paste into A C Un
  • 在VBA中使用for循环调用连续的变量名(即car1,car2...car10)

    设想 我有七个变量 labelKid1 labelKid2 LabelKid3 我正在搜索单元格以查找不为空的单元格 然后将值输入到标签中 从 labelKid1 开始 然后转到下一个标签 问题 有没有办法让我们使用 for 循环来遍历这些
  • java代码的等效vb代码

    谁能告诉我这段Java代码到底做了什么 SecureRandom random SecureRandom getInstance SHA1PRNG byte bytes new byte 20 synchronized random ran

随机推荐

  • Azure AD B2C 审核日志 - 图形 API

    我正在尝试检索 Azure AD B2C 用户登录审核日志 但它抛出以下错误 var signIns await graphClient AuditLogs SignIns Request GetAsync 失败 Microsoft Asp
  • 使用 AngularJS 创建自定义属性

    我是 AngularJS 的新手 我正在尝试编写一个指令来设置background color of a div 基于某种场景 本质上 在我看来 我希望能够编写以下代码 div content here div or div content
  • Angular UI Router:根据父解析对象决定子状态模板

    这是我的 app js 文件 我有一个父状态和两个子状态 两个子视图都需要该对象 states push name parentstate url parent objId abstract true templateUrl views p
  • .Net core托管服务保证完成

    我正在查看 Net Core 2 1 新功能托管服务 我发现它们的模型非常相似队列背景工作项 队列后台工作项似乎有一个限制 任务必须在 90 秒内执行 AppDomain 关闭只能延迟 90 秒 实际上是 HttpRuntimeSectio
  • Perl 正则表达式 |如何从文件中排除单词

    我正在寻找一些关于我在项目中的一些要求的 Perl 正则表达式语法 首先 我想从 txt 文件 字典 中排除字符串 例如 如果我的文件有以下字符串 path Document txt tree car ship 我使用正则表达式 a1tes
  • 在 Android 中创建新项目时出错

    在 Eclipse 中创建新的 Android 项目时 出现以下错误 2011 03 16 09 49 50 p ERROR Unknown option debug mode 2011 03 16 09 49 50 p Android A
  • spring 3.0同时支持jsp和jspx

    我已经设置了一个 roo 应用程序 roo 中内置的默认视图解析器适用于 jspx 文件 是否也可以支持jsp文件 我尝试配置两个 viewResolvers 但似乎没有 urlBasedViewResolvers 可以共存 无论是其中之一
  • 如何检查URL是否有效[重复]

    这个问题在这里已经有答案了 我在该用户中有一个文本框输入 URL 但如果想在页面渲染时检查该 URL 该怎么办 这是我的代码 protected void btnRender Click object sender EventArgs e
  • 如何在 python 中使用 xpath 查询带有命名空间的 xml 数据

    我正在尝试使用以下代码将 XPath 查询应用于具有命名空间的 XML 数据 from lxml import etree from io import StringIO xml
  • Getter 不与任何字段关联

    我收到编译器错误 Getter getLength inch 不与任何字段关联 对于以下代码 getLength inch 只是一个实用方法 import io realm RealmObject public class Measurem
  • 写入正在运行的 Jar

    我正在尝试创建一个包含数据的 Jar 文件罐子里面在程序执行之间持续存在 我知道还有其他方法可以保存数据 但我想要一个完全独立的 Jar 文件 我有一些似乎有效的东西 我希望就您在我的方法中看到的任何漏洞提供反馈 例如feels对此很黑客
  • Angular 2动态组件点击事件

    我正在尝试动态创建组件 但我想向其添加单击操作 但我不知道如何操作 我试图这样做 constructor public navCtrl NavController private resolver ComponentFactoryResol
  • 握手失败;返回 -1,ssl 错误代码 1,net_error -202

    我试图在使用用户输入打开的每个浏览器窗口上添加身份验证代理 但出现这些错误 20792 21516 1222 011708 284 ERROR ssl client socket impl cc 935 handshake failed r
  • Tensorflow 对象检测 API `indices[3] = 3 is not in [0, 3)` 错误

    我正在重新训练 TF 对象检测 API 的 mobilenet v1 SSD 并且在训练步骤中遇到错误 INFO tensorflow Starting Session INFO tensorflow Saving checkpoint t
  • 从 ASP.NET 页面打开 pdf

    我有 PDF 我想从 ASP net 项目打开它 我不想导航到 PDF 但我想保持当前页面打开 但当用户单击链接时 我想在另一个页面中打开 PDF 文件 您可以在新窗口中打开 PDF
  • 如何选择多个连接表值满足选择条件的行?

    给定以下示例表架构 顾客表 CustID 1 2 3 发票表 CustID InvoiceID 1 10 1 20 1 30 2 10 2 20 3 10 3 30 目标是选择 InvoiceID 值为 10 和 20 不是 OR 的所有客
  • 使用 Javascript 切换图像 src 属性

    我正在尝试更改 HTML 图像src使用 JavaScript 我有两个图像 Plus gif 和 Minus gif 我已插入 HTMLimg标签并编写了一个 Javascript 函数来更改图像src当点击时 问题是当用户单击图像时我想
  • 我在 Azure 中执行了“公开 API”,但无法向客户端程序获取该范围的令牌

    我正在尝试构建一个 WebAPI 并希望使用范围来限制其他客户端应用程序的权限 我在 公开 API 边栏选项卡上创建了一个范围 BuildingAccess 并将其他客户端应用程序添加到具有该范围的授权列表中 但是 当我使用客户端程序尝试获
  • 在 .NET Windows 窗体中,如何在两个 EXE 或应用程序之间发送数据?

    我提出的场景基本上是两个 NET 可执行文件之间的交互 我用 C 创建了一个 NET Windows 窗体应用程序 应用程序 A 该应用程序在用户的计算机上运行并执行一些特定的活动 因此它会收集一些数据 现在我有另一个 NET Window
  • SentOnBehalfOf 在 Excel 2010 VBA 代码中不起作用

    我正在编写一个用于通过 Excel 2010 中的 Outlook 进行邮件发送的 VBA 脚本 一切运行良好 但有一个例外 SentOnBehalfofName 行将不起作用 这是完整的代码 Sub Mail Working in Off