我是Excel VBA的新手,但我有一些来自Matlab和C ++的小代码过期。
我编写了以下代码,用于在某个单元格从下拉列表中更改为包含某个文本字符串时显示msgbox消息:
public static List<Player> ByteArrayToObject(byte[] arrBytes)
{
MemoryStream memStream = new MemoryStream();
BinaryFormatter binForm = new BinaryFormatter();
memStream.Write(arrBytes, 0, arrBytes.Length);
memStream.Seek(0, SeekOrigin.Begin);
var obj = (List<Player>)binForm.Deserialize(memStream);
return obj;
}
我收到以下错误消息:编译错误:无效的外部过程
当我从代码中删除显式选项并关闭VBE中工具下的require变量声明选项时,代码可以正常工作。因此,选项显式行触发了问题。
什么导致明确的选项出现问题?我无法弄清楚我的代码中是否有任何需要声明的变量。
感谢您的帮助!
答案 0 :(得分:-1)
Jeeped在他的评论中是正确的,你拼错了它应该如下所示:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$7" Then
If Range("C7").Value = "Blue home" Then
MsgBox "Hello world!"
End If
End If
End Sub