Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как открыть и активизировать таблицу из-под формы
 
 автор: MS_4G   (13.08.2008 в 03:40)   личное сообщение
 
 

Здравствуйте все!
Возник совсем глупый вопрос.
Я делаю приложения на Microsoft Access 2003 с использованием VBA/DAO. В некоторый момент в скрипте управляющей формы создается некоторая таблица (локальная), которую затем требуется открыть из-под этой управляющей формы именно как таблицу и получить к ней доступ для внесения пользователем в таблицу нужных изменений данных. Вариант создать отдельную форму на основе этой таблицы и открывать эту отдельную форму по некоторым причинам не годится.
У меня пока получается так: таблица создается как планировалось, таблица открывается из-под управляющей формы, но не удается сделать таблицу активной и, соответственно, нет к этой таблице доступа.
Заранее спасибо.

  Ответить  
 
 автор: osmor   (13.08.2008 в 08:48)   личное сообщение
 
 

"таблица открывается из-под управляющей формы"
подробнее. что вы понимаете под этой фразой

  Ответить  
 
 автор: FORMAT   (13.08.2008 в 10:33)   личное сообщение
 
 

Для внесения и( или) изменения даныых в таблице используйте конструкцию типа
CurrentDB.Execute "Insert чего то там инсертим"
CurrentDB.Execute "Update чего то там апдэйтим"

Для добавления ( изменения ) записей не нужно делать таблицу активной. ( Если речь идет именно о таблице а не о табличной форме )

  Ответить  
 
 автор: Анатолий (Киев)   (13.08.2008 в 12:23)   личное сообщение
 
 

Если имеется ввиду - открыть таблицу на экране, то используйте DoCmd.OpenTable.

  Ответить  
 
 автор: MS_4G   (13.08.2008 в 12:53)   личное сообщение
 
 

Под этой фразой понимаю как раз то, что предложил и Анатолий из Киева: открываю таблицу из скрипта командой DoCmd.OpenTable. Она (таблица) и открывается, но активной остается управляющая форма, в скрипте которой выполняется указанная выше команда, а к таблице доступиться нельзя.

То, что предложил Format, не годится, потому что по схеме работы приложения создание таблицы происходит скриптом, а вот внесение изменений (в открываемую таблицу) должно быть предоставлено пользователю по его усмотрению в режиме диалога как составная часть выполнения приложения, — ради этого затеяна вся конструкция; а скрипт потом должен обработать внесенные пользователем изменения (если таковые окажутся), но сейчас вопрос не в этом.

  Ответить  
 
 автор: osmor   (13.08.2008 в 15:20)   личное сообщение
 
 

форма в которой выполняется код не модальная?

  Ответить  
 
 автор: MS_4G   (13.08.2008 в 15:59)   личное сообщение
 
 

Форма, из скрипта которой выполняется DoCmd.OpenTable — модальная (модальное окно).

  Ответить  
 
 автор: osmor   (13.08.2008 в 16:14)   личное сообщение
 
 

ну так в чем тогда вопрос? модальная - это значит только она доступна

  Ответить  
 
 автор: MS_4G   (14.08.2008 в 15:13)   личное сообщение
 
 

Сделал как Вы посоветовали, окно управляющей формы не модальное.
За совет спасибо, но на результате это не отразилось: попрежнему формируемая таблица открывается из-под управляющей формы, но остается недоступной. Может быть, я где-то еще какие-то параметры недоучел?

  Ответить  
 
 автор: osmor   (14.08.2008 в 15:27)   личное сообщение
 
 

Можно посмотреть базу?

  Ответить  
 
 автор: час   (14.08.2008 в 16:04)   личное сообщение
 
 

или хотя бы строчку
DoCmd.OpenTable .................................................что там далее у ВАС?

  Ответить  
 
 автор: MS_4G   (15.08.2008 в 01:05)   личное сообщение
 
 

Что значит посмотреть базу, я не совсем понимаю.
Строка обращения к открытию таблицы:
DoCmd.OpenTable TNG, acViewNormal, acEdit

Здесь TNG - переменная, содержащая имя открываемой таблицы, остальное стандартно.

  Ответить  
 
 автор: osmor   (15.08.2008 в 09:08)   личное сообщение
 
 

хочется понять как у вас открывается форма из которой открывается таблица и какие у этой формы установлены свойства для окна.
Поскольку форма не дает редактировать открывшуюся таблицу, то она (скорее всего) открыта как окно диалога, или у нее установлено свойство "модальная". Это можно установить как свойствами формы так и способом ее вызова (Docmd.OpenForm .....) что бы не выяснять все это здесь, задавая длинные вопросы, хотел просто посмотреть кусок базы с вызовом формы и открытием таблицы из нее.

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList