选项显式,工作表更改事件,Excel VBA

时间:2016-07-09 10:44:53

标签: excel vba excel-vba

我是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变量声明选项时,代码可以正常工作。因此,选项显式行触发了问题。

什么导致明确的选项出现问题?我无法弄清楚我的代码中是否有任何需要声明的变量。

感谢您的帮助!

1 个答案:

答案 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