Различие между использованием .text и .value в Доступе VBA

Я передаю textbox1.text значения в запрос и иногда в строку:

Dim combor1 As String
combor1 = comboReason1.Text

Как я знаю, когда я должен поместить combor1 = comboReason1.Value?

Кроме того, почему я должен установить фокус для управления для ссылки на его свойство? Это не имеет смысла мне.

Кроме того, когда я установил combor4 = comboReason4.Value и .value является пустым, затем я получаю ошибку о недопустимом использовании пустого указателя.

13
задан Maciej Los 12 May 2015 в 12:13
поделиться

2 ответа

  • ".text" дает вам то, что отображается на экране
  • ".value" дает вам базовое значение

Оба обычно дают одинаковый результат, за исключением случаев, когда соответствующий элемент управления является

  1. элементом управления combobox или listbox
  2. отображаемое значение отличается от связанного столбца

Пример:

  • id_Person - элемент управления combobox в форме
  • источник строк - "SELECT id_Person, personName FROM Tbl_Person"
  • ширина столбцов - "0cm;3cm"
  • связанный столбец - 1

В этой ситуации:

  • id_Person. text отображает Tbl_Person.personName
  • id_Person.value отображает Tbl_Person.id_Person.

.text свойство доступно только тогда, когда соответствующий элемент управления имеет фокус.

.text - это строковое значение, поэтому оно не может быть Null, в то время как .value может быть Null

EDIT: .text может быть вызвано только тогда, когда элемент управления имеет фокус, в то время как .value может быть вызвано в любое время ...

24
ответ дан 1 December 2019 в 21:51
поделиться

Вы можете использовать свойство Text, чтобы установить или вернуть текст, содержащийся в текстовом поле или в части текстового поля комбинированного окна.

Чтобы установить или вернуть свойство Text элемента управления, элемент управления должен иметь фокус, иначе произойдет ошибка. Чтобы переместить фокус на элемент управления, можно использовать метод SetFocus или действие GoToControl.

Вы можете использовать свойство Value, чтобы определить или указать, выбран ли элемент управления, выбранное значение или опцию в элементе управления, текст, содержащийся в элементе управления текстового поля, или значение пользовательского свойства.

Свойство Value возвращает или устанавливает свойство по умолчанию элемента управления, которое предполагается, когда вы не указываете имя свойства в явном виде. В следующем примере, поскольку значением по умолчанию для текстового поля является значение свойства Text, вы можете ссылаться на его настройку свойства Text без явного указания имени свойства.

Forms!frmCustomers!txtLastName = "Smith"

Ссылка на свойство Text
http://msdn.microsoft.com/en-us/library/aa173453.aspx

Ссылка на свойство Value
http://msdn.microsoft.com/en-us/library/aa173476.aspx

1
ответ дан 1 December 2019 в 21:51
поделиться