ACCESS VBA Как добавить строки из нескольких таблиц в список - PullRequest
0 голосов
/ 26 февраля 2020

Я строю базу данных жилья. Несколько Деревен и годовой отчет на Деревню. Поиск осуществляется с помощью блока, лота и поселка от пользователя. Поэтому, когда пользователь вводит Village1, Block = 1 и Lot = 1, все строки блоков 1 и Lot 1 из всех таблиц Village1 (Village1 2019, Village1 2018 и т. Д. c) будут располагаться в списке.

Мой текущий код:

PrevYear = Int(Year(Date) - 1)
VTblName = Me.VillageTxt & " " & PrevYear 

Do While VTblName.EOF
  PrevRecord = "SELECT * FROM ='" & VTblName & "' WHERE Block='" & Me.BlockTxt & "' AND Lot='" & Me.LotTxt & "'"

  Me.PrevRecList.RowSource = PrevRecord

  PrevYear = PrevYear - 1
Loop

enter image description here

Ответы [ 2 ]

0 голосов
/ 27 февраля 2020

Вы не предоставляете достаточно информации для реального решения, но если вы пытаетесь использовать SQL для объединения информации из 2 или более таблиц в один набор записей / результат, используйте UNION.

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

0 голосов
/ 26 февраля 2020

Я не уверен, какой у вас вопрос, но если вы не получаете никаких данных, попробуйте удалить апострофы вокруг имени таблицы и знак «=» перед ним:

  PrevRecord = "SELECT * FROM " & VTblName & " WHERE Block='" & Me.BlockTxt & "' AND Lot='" & Me.LotTxt & "'"

Дополнительно если в имени таблицы есть пробел, используйте скобки:

VTblName = "[" & Me.VillageTxt & " " & PrevYear & "]"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...