Заполните две строки комбинированного списка запросом Access 2007 - PullRequest
0 голосов
/ 18 октября 2018

Я работаю с базой данных Access 2007 и у меня возникла проблема с запросом.

У меня есть таблица с именем «Транспортные средства», в которой содержатся такие данные, как ID, номерной знак и тип топлива для каждого из них.автомобиль в нем.Я пытаюсь сделать запрос, который будет заполнять поле со списком в форме для каждого типа топлива транспортного средства, основываясь на номерном знаке, выбранном пользователем заранее.

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

Пока это вроде работает, код выглядит следующим образом:

CheckDiesel: IIf([Diesel]="Yes";"Diesel";IIf([Gasoline] AND [Ethanol]="Yes";"Gasoline"+ "Ethanol";IIf([Ethanol]="Yes";"Ethanol";IIf([Gasoline]="Yes";"Gasoline";""))))

Если вы посмотрите на второйЕсли у меня есть условие для двухтопливной машины.Я хочу отображать бензин и этанол по отдельности, каждый подряд.

Я пытался использовать "& Chr (10) Chr (13) &" и "\ r \ n", но у меня ничего не получилось, поэтомудалеко.

Кто-нибудь может мне помочь?

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

Возможно, вам понадобится VBA, чтобы делать то, что вам нужно.Попробуйте что-то вроде этого:

Dim R as String
R=""
if (Me.Diesel) then R = R & "Diesel;"
if (Me.Gasoline) then R = R & "Gasoline;"
… {add any other types of fuel}
Me.MyComboBox.Rowsource = R
Me.MyComboBox.Requery

Это можно добавить к событию OnCurrent формы, чтобы оно обновляло поле со списком при каждом отображении новой записи.

Если ваша форма не содержитразличные типы топлива в качестве полей, либо добавьте их как скрытые поля, либо используйте DLookup, чтобы прочитать их со стола.

0 голосов
/ 18 октября 2018

Хранение нескольких фрагментов данных в одном поле редко заканчивается хорошо.Я вижу несколько вариантов

  1. Серия бинарных полей для бензинового типа.Таким образом, у вас есть истина / ложь для бензина, этанола и дизеля.Это легко показать с помощью флажков в форме.
  2. Если вы знаете, что будут только определенные комбинации, например, если не будет «дизеля и этанола» без бензина, вы можете построить его как одно значениекомбинированный ящик.
...