找不到与此 C# 代码等效的 VBA
本文关键字:VBA 代码 找不到 | 更新日期: 2023-09-27 18:34:07
这是 c# 代码:
if (emailBody.Contains("<CENTER>"))
{
emailBody = emailBody.Remove(0, emailBody.IndexOf("<CENTER>"));
if (emailBody.Contains("</CENTER>"))
{
emailBody = emailBody.Remove(emailBody.IndexOf("</CENTER>") + 10);
}
}
我已将其更改为VBA,如下所示:
If InStr(emailbody, "<CENTER>") > 0 Then
emailbody = emailbody.Remove(0, **emailbody**.IndexOf("<CENTER>")) ''COMPILE ERROR
If InStr(emailbody, "</CENTER>") > 0 Then
emailbody = emailbody.Remove(emailbody.IndexOf("</CENTER>") + 10)
End If
End If
但它不会编译给出上述行的错误:编译错误,无效的限定符。 有什么建议吗?
我认为你只想从emailBody中获取
si = InStr(emailBody, "<center>")
ei = InStr(emailBody, "</center>")
emailBody = Mid(emailBody, si, ei - si + 9)
以下 VBA 代码等效于 C#
If InStr(emailBody, "<CENTER>") > 0 Then
emailBody = Mid(emailBody, InStr(emailBody, "<CENTER>"))
If InStr(emailBody, "</CENTER>") > 0 Then
emailBody = Mid(emailBody, 1, InStr(emailBody, "</CENTER>") + 9)
End If
End If
这应该删除标签:
emailbody = Replace( emailbody, "<CENTER>", "" )
emailbody = Replace( emailbody, "</CENTER>", "" )