Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.06.2012, 00:31   #1
MegaMozg
Новичок
Джуниор
 
Регистрация: 15.05.2009
Сообщений: 2
По умолчанию Копирование всех форм из другой базы Access

Доброго времени суток.
Возникла следующая необходимость:
нужно перенести (скопировать) из одной базы в другую все формы кроме повторяющихся (по имени). Проделывал аналогичную операцию для таблиц:
Код:

Sub КопированиеВсехТаблиц(ПутьКИсточнику)
    Dim db As Database
    Set db = OpenDatabase(ПутьКИсточнику)
    Dim iFlagImport As Boolean
    For Each qdf In db.TableDefs
        iFlagImport = True
        For Each qdf2 In CurrentDb.TableDefs
            If (qdf.Name = qdf2.Name) Then iFlagImport = False
        Next qdf2
        If iFlagImport Then Call ЗагрузкаТаблицы(ПутьКИсточнику, qdf.Name)
    Next qdf
    db.Close
    Call КопированиеСвязей(ПутьКИсточнику)
End Sub
А вот с формами не канает -- подскажите как.

P.S.: По форуму (и не только этому) запарился искать -- подскажите хотяб куда рыть.

Спасибо.
Алексей.
MegaMozg вне форума Ответить с цитированием
Старый 15.06.2012, 09:19   #2
MegaMozg
Новичок
Джуниор
 
Регистрация: 15.05.2009
Сообщений: 2
По умолчанию

Решение найдено
Код:
Sub КопированиеФорм(ПутьКИсточнику)
    Dim appAccess As New Access.Application
    appAccess.OpenCurrentDatabase (ПутьКИсточнику)
    Dim iFlagImport As Boolean
    For Each qdf In appAccess.CurrentProject.AllForms 'b.AllForms
        iFlagImport = True
        For Each qdf2 In CurrentProject.AllForms
            If (qdf.Name = qdf2.Name) Then iFlagImport = False
        Next qdf2
        If iFlagImport Then Call ЗагрузкаФормы(ПутьКИсточнику, qdf.Name)
    Next qdf
    appAccess.CloseCurrentDatabase
    Set appAccess = Nothing
End Sub
MegaMozg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Закрытие всех дочерних форм belarusfight C# (си шарп) 3 26.02.2011 15:06
Удаление всех форм в проекте tanya-pvt Microsoft Office Access 0 31.03.2010 12:23
Копирование форм tae1980 Microsoft Office Excel 4 18.03.2009 14:51
Копирование форм. vlad73ko Microsoft Office Excel 2 13.03.2009 15:27
DATASOURSE всех форм HAN БД в Delphi 1 20.04.2008 11:46