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

Форум: MS ACCESS

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

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

 
 

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

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

тема: Копирование панелей и меню
 
 автор: MS_4G   (01.08.2008 в 03:33)   личное сообщение
 
 

Здравствуйте все!
Появился вот такой вопросик.
Я занимаюсь разработкой приложений в среде MAccess 2003. В некоторых ситуациях объекты в создаваемое приложение должны быть скопированы из других, ранее разработанных приложений, причем копирование должно производиться программным путем, средствами VBA/DAO. Для некоторых объектов (таблицы, запросы,...) вопрос решен. А как скопировать панели и меню?

Для конструктивного обсуждения прилагаю два фрагмента, которые сделаны и реально работают.
Первый фрагмент производит копирование всех таблиц, кроме системных, из одного приложения в другое.
Здесь dbn - база данных-источник, aca - ссылка на объект приложение-источник, flnm - имя (полное) создаваемого приложения. Остальное понятно по тексту.
При этом переносятся как локальные, так и связанные таблицы, которые есть в приложении-источнике.

For Each tbl In dbn.TableDefs
tbln = tbl.Name
If Left(tbln, 4) <> "MSys" Then
aca.DoCmd.TransferDatabase acExport, "Microsoft Access", flnm, _
acTable, tbln, tbln
End If 'Left(tbln, 4) <> "MSys"
Next 'For Each tbl In dbn.TableDefs

Второй фрагмент производит копирование всех форм из одного приложения в другое.
Здесь prn - проект-источник, остальное аналогично предыдущему.

For Each frm In prn.AllForms
frmn = frm.Name
aca.DoCmd.TransferDatabase acExport, "Microsoft Access", flnm, _
acForm, frmn, frmn
Next 'For Each frm In prn.AllForms

Может быть, панели и меню тоже можно подобным образом скопировать?
Кто знает, подскажите.
Заранее спасибо.

  Ответить  
 
 автор: Анатолий (Киев)   (01.08.2008 в 11:46)   личное сообщение
 
 

ИМХО, только с помощью объектной модели MSOffice. Точка входа - Application.CommandBars.

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