Что такое правильный код для добавления значения по умолчанию в поле со списком? - PullRequest
0 голосов
/ 16 января 2019

Хотя мой текущий код работает для открытия отчета. Если я ввожу значение в поле по умолчанию для поля со списком, он думает, что это отчет для открытия.Текущий код ...

Private Sub Command531_Click()
   If Not IsNull(ComboReports) And ComboReports <> "" Then
DoCmd.OpenReport ComboReports, acViewPreview, acWindowNormal
   Else
     MsgBox ("You Must First Select a Report To Open!")
     ComboReports.SetFocus
   End If
   ComboReports = ""
End Sub

Я бы хотел, чтобы "Выберите отчет" в качестве значения по умолчанию в поле со списком.Что я делаю неправильно??

Заранее спасибо, Джерри

Ответы [ 2 ]

0 голосов
/ 16 января 2019

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

Если ваш RowSource равен

SELECT MsysObjects.Name FROM MsysObjects WHERE (((Left$([Name],1))<>"~") AND ((MsysObjects.Type)=-32764)) ORDER BY MsysObjects.Name

попробуйте использовать это для RowSource

SELECT Name FROM MsysObjects WHERE Left(Name,1)<>'~' AND Type=-32764
UNION
SELECT ' Select Report' AS Name
ORDER BY Name

Пробел в «Выбрать отчет» намеренно помещает его в верхнюю часть ордера.

0 голосов
/ 16 января 2019

Ниже код будет работать для вас

Private Sub Command531_Click()
     If Nz(ComboReports, "") <> "" And Nz(ComboReports, "") <> "Select Report" Then
        DoCmd.OpenReport ComboReports, acViewPreview, acWindowNormal
   Else
     MsgBox ("You Must First Select a Report To Open!")
     ComboReports.SetFocus
   End If
   ComboReports = ""
End Sub
...