![]() |
|
Модераторы: mihanik |
![]()
|
|
| kminas |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
RussianHero,
Я, к сожалению не понял, где квадрат 8) и вообще ничего у меня не получилось. Может есть кто-нибудь поумнее меня на каком-нибудь форуме, bilya, kapbepucm или еще кто-нибудь, ну не получется у меня. Вот полный код одной процедуры получившийся после осмысления нескольких советов. Поправьте, пожалуйста.
|
|||
|
||||
| bilya |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 3.1.2007 Репутация: 1 Всего: 1 |
Как я понял, ошибка здесь (для этого случая) - вы создаете НОВЫЙ ОБЪЕКТ ПРИЛОЖЕНИЯ WORD (не объект документа) и пытаетесь одновременно сделать видимыми как этот объект приложения, так и форму, относящуюся к другой аппликации, для того, чтобы с этой формы что-то делать с созданным документом - правильно?
Поэтому документ нужно открывать в том же приложении, где находится форма, его открывающая В общем, смотрите пример. И еще. То, что у вас после "With frmObor" - т.е. относится к другой форме - пишите в UserForm_Initialize той формы (кроме .Show, есс-но Пишем в модуле:
Пишем в первой форме:
И для примера во второй форме:
Это сообщение отредактировал(а) bilya - 19.1.2008, 08:01 |
||||||
|
|||||||
| RussianHero |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 14.8.2007 Где: г. Балашиха, МО Репутация: нет Всего: нет |
Че-то я уже вообще ниче не понимаю 8)))
Вроде бы у него ниче не закрываеться... насколько я понял, что ему надо: Открыть ворд, взять загрузить туда документ(шаблон), потом он с ним че-то должен сделать..., потом, после того, какпрошла процедура обработки/генерации ит.п. он просто хочет его сохранить в другой попке... вот и все. Автор, это вам надо? |
|||
|
||||
| bilya |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 3.1.2007 Репутация: 1 Всего: 1 |
RussianHero, смотрите вопрос темы.
Как я понял - требуется: открыть шаблон - на его основе сделать документ - сохранить документ (без закрытия) - работать в дальнейшем с документом с формы (но не с той, которая его открыла) Так? |
|||
|
||||
| kminas |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Да, bilya прав. Открывается документ Word с таблицей, SaveAs (т.к. эта таблица используется в виде шаблона), форма, открывающая его закрывается и открывается форма с контролами и базами для заполнения таблицы. Спасибо, bilya, я еще плохо владею процессами загузки (выгрузки), инициализации форм, придется сильно поработать мозгами и руками. |
|||
|
||||
| bilya |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 3.1.2007 Репутация: 1 Всего: 1 |
Кстати, а для чего вообще вы делаете контрол.Visible = True? Они у вас до этого скрыты, что ли?
|
|||
|
||||
| kminas |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Проверил, действительно они могут быть открыты, а некоторые и открыты, а это имеет значение? Кстати, Ваш пример пока не пошел. Прога ругается на
Попробовал поменять местами со следующей строчкой
Это сообщение отредактировал(а) kminas - 19.1.2008, 14:54 |
||||||
|
|||||||
| bilya |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 3.1.2007 Репутация: 1 Всего: 1 |
1. Если вы специально не устанавливаете предварительно .Visible = False у контролов, то это делать бессмысленно
2. ВАШ путь прописываете правильно?
|
|||
|
||||
| kminas |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
1. Я не про бессмысленно, это пояснять не надо, почему плохо из другой формы включать? Я понял, что эти контролы можно не прятать - они относятся ко всем исполняемым процедурам. 2. Немного не такой, но путь указываю правильно. Тут другое дело. Прога пишет ошибку 429. ActiveX component can't create object и указывает на
Это сообщение отредактировал(а) kminas - 19.1.2008, 17:20 |
||||||
|
|||||||
| bilya |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 3.1.2007 Репутация: 1 Всего: 1 |
1. Да можно и с другой. Только в такой последовательности он у вас не работает. Попробуйте прогнать код по-шагово.
2. Ни каких, случаем, объявлений не делали интересных? Посмотрите - так получится?
Это сообщение отредактировал(а) bilya - 19.1.2008, 18:01 |
|||
|
||||
| kminas |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
1. Пошагово не один десяток раз прогонял, все открывается, но это на форме, а меня это не волнует, волнует открытие документа, кроме того я уже их всех отключил.
2. Вот весь мой код до упомянутой строки
Выдает тот же run-time error "429" Это сообщение отредактировал(а) kminas - 19.1.2008, 19:19 |
||||
|
|||||
| bilya |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 3.1.2007 Репутация: 1 Всего: 1 |
1. Дело в том, что у вас сначала вторая форма открывается (с параметрами контролов, установленных по умолчанию) и только после закрытия этой формы начинает отрабатывать код, находящийся ниже .Show
2. Попробуйте так:
Если не пойдет и есть возможность - скиньте ваш файл сюда |
|||
|
||||
| kminas |
|
||||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Спасибо, вроде заработало, только выдает ошибку 0. Буду искать. Кроме того пришлось немного пересроить код я добавил
Сделал как написано в книге (это первая строчка)
Выдает ошибку 429 ActiveX component can't create object or return reference to this object Невозможно создание объекта или возвращение ссылки на этот объект компонентом ActiveX |
||||||||
|
|||||||||
| kminas |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Ну, вроде работает нормально, разве что все равно код лезет в файл открытый первым. Ну да ладно, научусь и позже подправлю, а пока поработают с одним файлом. Проблема в другом. Программа выдает ошибку 4160, когда в имени файла пробел. Проверял и "-" и "." все жрет, а с пробелом не хочет открывать. Вот код:
|
|||
|
||||
| kminas |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 240 Регистрация: 26.10.2005 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Снова вернулся к описанной проблеме. Уже кое-что получилось. Например этот код работает. И, если я открываю второй и далее документы Word, то активным становится открытый мной.
Но в нем что-то не так, но не могу понять, что Если ранее был уже открыт документ, мой то файл открывается, но, появляется еще одна копия Word, но без документа. А при открытии первого документа такого не происходит? И еще. Почему-то при откртии файла в имени которого есть пробел, программа выдает ошибку 4160 и пишет: "неправильное имя файла" Это происходит при активации файла (последняя строка) Это сообщение отредактировал(а) kminas - 29.3.2008, 23:46 |
|||
|
||||
![]()
|
| Правила форума "Программирование, связанное с MS Office" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |