Я пытаюсь передать имя глобальной переменной подпрограмме и хотел бы знать, как ссылаться на нее. Например, я мог бы сделать следующее с помощью элемента управления:
Private Sub passCtrlName(ctlName as String)
Me.Controls(ctlName) = "Whatever"
End Sub
Edit:
Например
Public imGlobVar As String
Public Sub passGlobVar(frm as Form, ctlName as String, globVar as String)
frm.Controls(ctlName) = globVar
End sub
И назовите это как
Частный Sub imaButton_Click ()
imGlobVar = "что-то"
Вызовите passGlobVar (Me, txtBox1, imGlobVar)
Конец суб
2-е редактирование:
Кажется, что я определенно мог бы лаять здесь не то дерево, поэтому я объясню, чего я пытаюсь достичь.
У меня есть форма, в которой есть текстовые поля для адреса пользователя (риска), с флажком вверху, который позволяет пользователю выбрать, что этот адрес совпадает с «контактными» данными, уже имеющимися в системе, и текстовые поля заблокирован.
Заполнение текстовых полей нормально и работает. Я использую глобальные переменные для улучшения юзабилити (хотя и немного).
Пользователь может добавлять новые данные, и если он установит флажок «сделать так же, как контакт», введенные данные сохраняются в глобальных переменных, по одному для каждого элемента управления.
Если пользователь допустил ошибку, установив флажок, он не потерял это значение и, сняв флажок, введенные значения будут возвращены.
Я надеялся создать подпрограмму, в которой я мог бы передать имя глобальной переменной и элемент управления и вызывать эту подпрограмму, а не записывать ее для каждого элемента управления.
У меня такое чувство, что я могу использовать неправильную технику для достижения своих целей. Но, отвечая на мой первоначальный вопрос, кажется, что вы не можете передавать глобальные переменные подпрограммам так, как я хотел.