Excel Vba中的编译器错误
运行下面的代码时出现编译器错误:
Sub AddNameInList() FilmName = InputBox("Type in a new film name") Worksheets("sheet2").Activate Range("b1").End(xlDown).Offset(1, 0).Select ActiveCell.Value = FilmName MsgBox FilmName & " was added to the list" End Sub
错误信息
编译器错误:variables未定义
你需要声明FilmName:
Sub AddNameInList() Dim FilmName As String FilmName = InputBox("Type in a new film name") Worksheets("sheet2").Range("B1").End(xlDown).Offset(1, 0).Value = FilmName MsgBox FilmName & " was added to the list" End Sub
如果您将Option Explicit设置在模块的顶部或设置中,则需要声明所有variables。
还要避免使用.Select
和.Activate
。 一般来说,它们不是必需的,只会减慢代码的速度。