|
|
|
Доступ к модулю другого mdb ....
|
|||
|---|---|---|---|
|
#18+
извините, что повторяюсь, но ответа я так и не получил, попробую описать заново: Как мне из одного mdb в vba коде получить доступ к другому mdb, в частности чтобы переписать там модуль формы, подправить размеры контролов в отчёте... Или это не возможно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2003, 22:22 |
|
||
|
Доступ к модулю другого mdb ....
|
|||
|---|---|---|---|
|
#18+
А как получить доступ к модулю в текущей базе знаете? Тогда в чем проблема? Я же сказал вам как отрыть другой mdb файл. Вот пример, позволяющий посчитать строки в модулях всех форм другой базы, я думаю, это поможет вам продвинуться дальше Public Sub AnotherDB(strDBname as String) Dim obj As AccessObject Dim dbs As Access.Application Dim mdl As Module Dim fm As Form Dim N As Long Set dbs = CreateObject("Access.Application") dbs.OpenCurrentDatabase (strDBname) For Each obj In dbs.CurrentProject.AllForms dbs.DoCmd.OpenForm obj.Name, acDesign Set fm = dbs.Forms(obj.Name) Set mdl = fm.Module N = N + mdl.CountOfLines dbs.DoCmd.Close acForm, obj.Name, acSaveNo Next obj MsgBox (N) dbs.Quit End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2003, 22:36 |
|
||
|
Доступ к модулю другого mdb ....
|
|||
|---|---|---|---|
|
#18+
огромное спасибо! простите меня пожайлусто, но не подскажите как например мне добавить строчку в модуль?? а то из примера видно только как подсчитать строки, а свойств или методов у получаемой как в примере модуля формы, нужных мне я к сожелению не нашёл... заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2003, 23:21 |
|
||
|
Доступ к модулю другого mdb ....
|
|||
|---|---|---|---|
|
#18+
2Serge Gavrilov Всё, разобрался! СПАСИБО! а примерчиком как поменять размеры объектов на формах, отчётах не поделитесь? :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2003, 23:31 |
|
||
|
Доступ к модулю другого mdb ....
|
|||
|---|---|---|---|
|
#18+
>а свойств или методов у получаемой как в примере модуля формы, нужных мне я к сожелению не нашёл... Как можно не найти? Открываете в Help объект Module и смотрите его методы и свойства. Методы: AddFromFile AddFromString CreateEventProc DeleteLines Find InsertLines InsertText ReplaceLine Там и примеров полно, например такой: Function ClickEventProc() As Boolean Dim frm As Form, ctl As Control, mdl As Module Dim lngReturn As Long On Error GoTo Error_ClickEventProc ' Create new form. Set frm = CreateForm ' Create command button on form. Set ctl = CreateControl(frm.Name, acCommandButton, , , , _ 1000, 1000) ctl.Caption = "Click here" ' Return reference to form module. Set mdl = frm.Module ' Add event procedure. lngReturn = mdl.CreateEventProc("Click", ctl.Name) ' Insert text into body of procedure. mdl.InsertLines lngReturn + 1, vbTab & "MsgBox ""Way cool!""" ClickEventProc = True Exit_ClickEventProc: Exit Function Error_ClickEventProc: MsgBox Err & " :" & Err.Description ClickEventProc = False Resume Exit_ClickEventProc End Function ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2003, 23:39 |
|
||
|
Доступ к модулю другого mdb ....
|
|||
|---|---|---|---|
|
#18+
>а примерчиком как поменять размеры объектов на формах, отчётах не поделитесь? :)) Но это же совсем не сложно, открываете форму в режиме конструктора и задаете свойства контролов. Посмотрите мою программку MDE forms/reports extractor v2.1 на http://accesstools.narod.ru, там формы, отчеты и их контролы создаются программно (открывайте с нажатым Shift, чтобы получить доступ к коду). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2003, 23:47 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32233426&tid=1679971]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
80ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
| others: | 228ms |
| total: | 400ms |

| 0 / 0 |
