alehander » 10.11.2006 (Пт) 17:21
1 таблица bilet. поля id_predm (integer),n_bileta (integer), id_bil (counter).
2 таблица voprbil. поля id_bileta (integer),id_vopr (integer),nomer_voprosa (integer).
между bilet и voprbil связь 1 ко многим по полю id_bil.
b=[Forms]![Форма1]![kol_bil]'количество билетов
v=[Forms]![Форма1]![kol_vopr]'количество вопросов
For a=1 to b
DoCmd.runsql ("insert into bilet (id_predm,nomer_bileta) SELECT predm.id, "&a&" FROM predm WHERE [predm].[id]=[Forms]![Форма1]![predm].value")
For n=1 to v
DoCmd.runsql ("insert into voprbil (id_bileta,nomer_voprosa) SELECT bilet.id_bileta, "&n&" FROM bilet ")
next n
next a
вопрос
по идее в таблице билет создаётся запись, далее в эту запись добавляется столько строчек сколько идёт в цикле
For n=1 to v
DoCmd.runsql ("insert into voprbil (id_bileta,nomer_voprosa) SELECT bilet.id_bileta, "&n&" FROM bilet ")
next n
но в реальности если b=10, v=2
билет заполняется нормально,но в таблице voprbil в первой записи id_bileta соответствует 20 записей id_vopr, во второй записи id_bileta - 18 записей id_vopr и т.д. И только в последней записи всё идёт как необходимо 2 записи