我有这段代码:
Sub ADD_PEDIDO_AtualizaPagamentos()
If M6 = erro Then
MsgBox ("Erro!")
Else
Sheets("ADD_PEDIDO").[M9].Value = "Done!"
End If
End Sub
没有" IF"代码工作正常。但是在插入IF和Else之后,我总是收到错误代码。 正如你在上面的代码中看到的那样,M6单元提供了" OK"插入,但宏给我错误。
任何帮助?
答案 0 :(得分:2)
您的编码中存在严重的语法问题。
您应该使用 工作表 .Range 方法引用范围。
Sub ADD_PEDIDO_AtualizaPagamentos()
If Worksheets("ADD_PEDIDO").Range("M6") = "erro" Then
MsgBox "Erro!"
Else
Worksheets("ADD_PEDIDO").Range("M9").Value = "Done!"
End If
End Sub
答案 1 :(得分:2)
我不会说西班牙语,所以我不知道erro是否是另一种语言的VBA中的关键术语,但是如果你要检查实际的字符串错误,你应该改变你的if声明行到。还将M6与Range("")环绕在一起,这样它就知道你没有引用一个名为M6的变量。
If Range("M6") = "erro" Then
答案 2 :(得分:2)
UNTESTED:
尝试更换:
dplyr::mutate
使用:
dplyr::filter
答案 3 :(得分:1)
我认为您首先应该通过阅读this来了解如何在VBA中引用特定细胞或细胞范围 - 然后我认为您应该能够回答自己的问题。
如果没有if ...那么在你的第2行,它就变成了一个迄今未声明的变量M6的初始化(赋值),就像`x = ...'一样。
Option Explicit
添加到您编写的每个vba代码模块中可能是一种很好的做法;然后VBA会更慷慨地告诉你出了什么问题。