Форматирование текста в Word в соответствии с величинами, указанными в Excel. Пусть есть пустая папка, в ней есть ворд-документ. Пусть в excel-документе есть ячейки с возможностью выбора (выпадающие списки) шрифта, абзацного отступа, расстояния меж строками, размера шрифта. Требуется, чтобы по нажатию кнопки на листе ворд-документ из папки форматировался в соответствии с выбранными значениями шрифта и проч. в excel-файле.
Форматирование текста в Word
Сообщений 1 страница 13 из 13
Поделиться22010-11-30 00:42:44
Пусть есть пустая папка, в ней есть ворд-документ.
Долго думал над этой фразой
Поделиться32010-11-30 12:34:01
Максим, благодарю за толерантность )). Мой ум ударился о свой потолок.
Полагал я следующее: папка должна ИМЕТЬ ВОЗМОЖНОСТЬ быть пустой. Т.е. файл excel не должен быть "жестко" привязан к файлам в папке. Я прописал это, т.к. не знаю алгоритма решения и заподозрил, что Вы можете сделать какую-нибудь жесткую связь от excel-файла к ворд-файлу. Мне же нужно, чтобы я мог управлять любым новопоявившимся файлом в папке.
Поделиться42010-12-04 01:54:40
Еще решено не полностью. Пока хочу понять, в правильном ли направлении я иду. Посмотрите, пожалуйста.
Схема такова: по нажатию кнопки на листе Excel появляется диалог выбора ворд-файла, который необходимо форматировать. В выбранном ворд файле выделяется весь текст и к нему применяется шрифт и размер шрифта выбранный на листе в Excel.
Поделиться52010-12-04 02:33:09
Да, Максим, именно это. Можно ли разделить события на две кнопки: кнопка с выбором файла и кнопка форматирования. Если первую нажали - работать с выбранным файлом. Если первую не нажимали, то форматируются (по нажатию второй кнопки) все ворд-файлы, лежащие с данным ехсель-файлом в одной папке?
Поделиться62010-12-05 00:33:41
http://depositfiles.com/files/0ce4olbaw
В этой версии подключал дополнительную библиотеку - надо попробовать работает ли в обоих офисах.
Поделиться72010-12-05 21:03:00
Максим,
странно: Вы разрабатываете, как я понял, в 2010, т.е. и библиотека примерно той же версионности. Так вот, в 2003 как раз все пристойно, а в более позднем 2007 - ошибка.
1. В 2007 выдается ошибка нераспознавания метода (метод комбобокса) FontList.ListCount. Может быть, дело в том, что "гносеология, конечно, реально создает катарсис"?
2. Максим, сделайте, пожалуйста, значением по умолчанию комбобокса "Отступ" значение "1,25" - стандартный документозный отступ.
Поделиться82010-12-05 21:55:42
Для разработки я перешел на 2003-й офис, подумал, что так будет лучше в плане совместимости с другими версиями. Так что с 2003-м все понятно.
1. В 2007 выдается ошибка нераспознавания метода (метод комбобокса) FontList.ListCount. Может быть, дело в том, что "гносеология, конечно, реально создает катарсис"?
Может, конечно, и гносеология) Но все же проверьте в 2007-м Excel'е, что разрешен запуск всех макросов. Вкладка "Разработчик" -> "Безопасность макросов" -> проверить стоит ли радио-кнопка "Включить все макросы". Если не установлена данная настройка, то надо включить её и попробовать открыть файл еще раз.
Поделиться92010-12-05 23:48:51
Максим,
Вы правы! Однако, меня это удивляет: перед открытием файла возникало предупреждение, где я выбирал "включить макросы" - разве это не то же самое, что предлагаете Вы?
В любом случае, все заработало.
Максим, не понял по коду следующего (смотрел, правда, очень бегло): не понял смысла заполнения колонки Y. Вы вычерпываете системный список шрифтов в Y, а уже из Y заполняете комбобокс?
Остаточная просьба касается значений по умолчанию (12 шрифт, Times New Roman, расстояние меж строками - 1,5, отступ - 1,25).
Поделиться102010-12-06 00:39:45
Однако, меня это удивляет: перед открытием файла возникало предупреждение, где я выбирал "включить макросы" - разве это не то же самое, что предлагаете Вы?
Я тоже на это попадал. Видимо, не то же самое.
Максим, не понял по коду следующего (смотрел, правда, очень бегло): не понял смысла заполнения колонки Y. Вы вычерпываете системный список шрифтов в Y, а уже из Y заполняете комбобокс?
Да было именно так. Когда-то я умел заполнять выпадающие списки только из ячеек. Но теперь я умею делать это, не прибегая к ячейкам, и соответственно, исправил код.
Пожалуйста: http://depositfiles.com/files/9gobvw3k4
Поделиться112010-12-06 01:57:38
Максим,
все работает, все отлично. Осталось следующее:
1. Я совершенно забыл, но как только увидел отформатированный файл - вспомнил. Т.к. это уже дополнительный вопрос, его можно пропустить, если он трудозатратный: необходимо, чтобы весь текст был отформатирован "по ширине", а не "влево".
2. Это не баг, но приведет в ступор большую часть профессорско-преподавательского состава. Если нажать кнопку выбора одного файла, а потом нажать "отмену" выскакивает дебаггер. Если можно, поставьте защиту от преподавателя.
А так - задача решена.
Поделиться122010-12-06 03:06:52
1. Я совершенно забыл, но как только увидел отформатированный файл - вспомнил. Т.к. это уже дополнительный вопрос, его можно пропустить, если он трудозатратный: необходимо, чтобы весь текст был отформатирован "по ширине", а не "влево".
Это без проблем.
2. Это не баг, но приведет в ступор большую часть профессорско-преподавательского состава. Если нажать кнопку выбора одного файла, а потом нажать "отмену" выскакивает дебаггер. Если можно, поставьте защиту от преподавателя.
Нет, это баг) Исправил.
Поделиться132010-12-06 12:07:04
Максим,
прекрасно, задача решена!