Работа в VBA, я не могу назначить строку в initylialized String Cariable (ошибка компиляции: ожидаемый конец оператора)

StackOverflow https://stackoverflow.com//questions/24039148

Вопрос

Я работаю в модуле в доступе, пытаясь инициализировать переменные.По какой-то причине декларация:

Dim ModName As String = "modWindowsFileSystem" 
.

Создает ошибку компиляции в «=» с сообщением об ошибке «Ожидаемое: конец оператора».Я посмотрел на формат на веб-сайтах Mutiple, что все согласны с моим синтаксисом, здесь является надежным: http://msdn.microsoft.com/en-us/library/7eee5a7s1.aspx. Другой сайт предложил, я объявляю переменную внутри функции, такой как

Sub AssignValueString()
   Dim Modname As String
   Modname = "modWindowsFileSystem"
End Sub
.

Но это кажется ненужным.Одним из проблем, которая может быть рассмотрена, я сохранил модуль и назвал его ModwindowsFileSystem.Я не уверен, что это будет как-то конфликтуйте с инициализацией этой переменной.

Это было полезно?

Решение

VBA немного отличается от VB.Соглашенная вами ссылка MSDN на самом деле для VB, которая позволяет встроить объявления и назначение.VBA не позволит этому, к сожалению.

Так, вы можете разделить их, как ваш пример:

Dim Modname As String
Modname = "modWindowsFileSystem"
.

или, вы можете разместить генеракодицет-код продолжения символа для достижения этого на одну строку.

Dim Modname As String : Modname = "modWindowsFileSystem"
.

Насколько к назначению переменных модуля вы можете объявить глобальные переменные вне функции, но вам нужно будет установить их значение в функции, например функцию :.Константы (с надписью init()) могут быть объявлены и назначены вне функции.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top