|
|
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
Здравствуйте При запуске макроса у меня создаётся второй документ. Когда я работаю на первом документе (откуда запустил макрос), то нужно перемещаться на второй документ (т.е. я на первом документе выделяю данные, нажимаю кнопку и данные копируются во второй документ). Проблема: как при нажатии кнопки в первом документе, НАДО перейти на второй документ (второй документ создался при запуске макроса). Не знаю как это сделать... Может можно к открытым (или созданым) документам обращаться через какие-нибудь индексы... Подскажите пожалуйста как это можно реализовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 12:05:57 |
|
||
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
К документу можно обратиться по имени или по индексу. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 12:58:34 |
|
||
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
Открыт мой документ (откуда вызываю макрос), и создан новый документ "Документ1.doc" (при вызове макроса), но не сохранён. Не получается, если обращаюсь по индексу, то говорит, что неверный индекс. Если по файлу ("Документ1.doc"), то говорит, что файл не правельный (может из-за того что не сохранён, но и с другими файлами работать не тхочет). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 13:58:05 |
|
||
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
NoviyОткрыт мой документ (откуда вызываю макрос), и создан новый документ "Документ1.doc" (при вызове макроса), но не сохранён. Если документ не сохранен, он не должен в своем названии содержать расширение, как написано у вас. Смотри, есть два документ "Документ1" и "Документ2", оба открыты и не сохранены. В первый документ добавляем кнопку с событием "Click": Код: plaintext Все ок, и по индексу тоже. Кстати какая у вас версия Word? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 14:39:04 |
|
||
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
Всё равно ругается: "неверное имя файла", хотя имя файла правильное Office 2003 (11.5604.5606) Может можно при создании записать в переменную ссылку на созданное окно (документ), и потом обращаться по ней (то же пробовал делать - не получается). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 18:16:35 |
|
||
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
решил небольшой код привести - всё равно не хочет заносить данные в Документ2... Вот так при запуске макроса, вызывается форма, и создаётся другой документ (Документ2): Sub click() Dim objWord As New Word.Application UserForm2.Show objWord.Visible = True objWord.Documents.Add Set objWord = Nothing End Sub потом на этой форме нажимаю кнопку и данные заносятся в только что созданый документ: Private Sub cbAdd_Click() Dim objWord2 As New Word.Application objWord2.Application.Documents("Документ2").Range.Text = "Test" Set objWord2 = Nothing End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 18:23:31 |
|
||
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
Решил проблемку, но другим способом: В листинге выше, я создал переменную, через неё создал документ. Когда нажимаю на кнопку, то данные заносятся через переменную. Этот блок правильно заработал, когда я UserForm2.Show поставил в конец блока. Ashton cпасибо за помощь/// ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.04.2006, 20:06:41 |
|
||
|
Работа с несколькими документами
|
|||
|---|---|---|---|
|
#18+
В твоем примере, ты создаешь документ в одном экземпляре Word, а обращаешься к нему уже из другого, вновь созданного. Еще, UserForm2.Show открывает форму в модальном режиме, а пока форма находится в этом режиме, выполнение кода не продолжится пока ты не закроешь ее. И вообще, зачем в первом и втором макросе создавать лишние экземпляры Word, если можно оперировать уже имеющимся экземпляром (если ты уже находишься в Word). Код: plaintext 1. 2. 3. Код: plaintext 1. 2. Или можешь сделать паблик объектную переменную и затем к ней обращаться. Стандартный модуль. Код: plaintext 1. 2. 3. 4. 5. Модуль формы. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2006, 16:17:46 |
|
||
|
|

start [/forum/topic.php?fid=61&gotonew=1&tid=2184982]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
124ms |
get topic data: |
9ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 419ms |

| 0 / 0 |
