|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Добрый день! Создаю документ на основании шаблона. Код: sql 1. 2.
В поля документа попадают данные из базы данных. Документ потом редактируется. При "Сохранить как..." документа хочу в диалоговом окне получить <имя файла (12345)> Решается Код: sql 1.
Но вот беда - в диалоговое окно нужное имя попадает, но при этом файл УЖЕ создается на диске по пути, прописанном в Word по умолчанию. А он мне там совершенно не нужен. Как из шаблона сразу создавать файл с нужным мне именем или может есть свойство. в котором имя файла в создаваемом мной объекте Word задается по умолчанию? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2016, 17:07 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
miv32Решается Код: sql 1.
Но вот беда - в диалоговое окно нужное имя попадает, но при этом файл УЖЕ создается на диске по пути, прописанном в Word по умолчанию. А он мне там совершенно не нужен. Как из шаблона сразу создавать файл с нужным мне именем или может есть свойство. в котором имя файла в создаваемом мной объекте Word задается по умолчанию?Детсад, штаны на лямках... А кто-то запрещает имя файла указывать полностью, вместе с полным путём? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2016, 17:43 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Исходный шаблон lcNameShab = 'qqqqq.docx'. Он один для всех юзеров. Юзеры работают с базой. У каждой записи свой ID-шник. В каждой записи естественно свой набор данных. Надо распечатать документ. Но в документе приходится что-то править. Через .Add(FULLPATH(lcNameShab)) открываем. Что-то в нем правим. Надо чтобы в диалоговом окне, которое предлагает ворд при Сохранить как... было qqqqq (ID-шник). Т.е. надо чтобы этот (ID-шник) уже предлагался в имени файла. Как так сделать? Один юзер сам выбирает папку \1000\ и правит имя на ему нужное не меняя значение в скобках. Другой юзер сам выбирает папку \2000\ и правит имя на ему нужное не меняя значение в скобках. Если использовать SaveAs("имя"), собирая "имя" через конкатенацию 'qqqqq (' + transform(ID) + ')' то все работает, но как я сказал ранее - валится мусор вида qqqqq (ID-шник).docx в папку ворда по умолчанию, который создает SaveAs. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2016, 19:40 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
miv32Если использовать SaveAs("имя"), собирая "имя" через конкатенацию 'qqqqq (' + transform(ID) + ')' то все работает, но как я сказал ранее - валится мусор вида qqqqq (ID-шник).docx в папку ворда по умолчанию, который создает SaveAs.Какая еще "папка ворда по умолчанию"? Что мешает сочинить имя фала и спросить паку для сохранения ДО вывода в ворд и подсунуть ворду в SaveAs() ПОЛНОЕ имя с путём? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2016, 14:01 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Если поискать на просторах интернета (вопрос ОЧЕНЬ старый и часто задавался), то предлагаются два решения: 1. Перехватываешь вызов SaveAs в самом Excel и подсовываешь ему сформированное имя файла, как имя по умолчанию. Но это надо писать макрос Excel. Как это делается, легко найдешь в поисковиках 2. Формируешь шаблон с нужным именем и уже его открываешь Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
Единственный недостаток, это дополнительная цифра 1 в конце имени, присваиваемая Excel автоматически, как номер версии файла ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2016, 14:21 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Да, перепутал Word и Excel. Но, думаю, в данном случае это без разницы ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2016, 14:24 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Вариант с удалением ненужного файла был очевиден, но хотелось добраться до переменной. Ок, спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2016, 14:55 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Теперь другая беда Во первых: Код: sql 1.
Не работает. Создает не "Шаблон с нужным именем" (у меня Документ1) Заменил на Код: sql 1.
Это работает. Сформировал документ, при Сохранить как... предложил нужное мне имя. Сохраняю, допустим в c:\1 Формирую новый документ, но Word для сохранения опять предлагает папку, где лежит "Шаблон с нужным именем", а не c:\1 игнорируя свои же собственные настройки. Беда... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2016, 18:06 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
На всякий случай уточню. Под термином "шаблон" я понимаю файл с расширением XLT или XLTX. Для их получения надо при использовании SaveAs задать тип файла "Шаблон Excel (*.xltx)" Если Вы используете файлы с расширением XLS или XLSX, то это НЕ шаблоны в терминах Excel. Это обычные рабочие книги Excel. И для них действуют немного другие правила. Чем и объясняется "глюк" использования Add() Насколько я понимаю, однажды выбранный путь для сохранения файла будет сохранен в рамках одной "сессии" Excel. Т.е. до тех пор, пока экземпляр Excel не будет закрыт. Обратите внимание, не файл (рабочая книга), а сам экземпляр Excel ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2016, 18:22 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Опять сбился на Excel Для Word шаблон имеет расширение DOT или DOTX, в отличие от документов с расширением DOC или DOCX ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2016, 18:30 |
|
Вывод в Word (SaveAs)
|
|||
---|---|---|---|
#18+
Оговорочки по Фрейду. :) Пожалуй да, не совсем шаблон в терминологии Word. Под шаблоном я подразумеваю заготовку формата *.docx в котором набран некий текст и есть несколько полей, вставленных через "Разработчик", в которые процедурой я загоняю данные из базы. Таких заготовок несколько в выпадающем меню. В принципе при использовании SaveAs скапливающийся "мусор" ложиться в папку по умолчанию, которая прописана в настройках Ворда. Народ потом чистит периодически. Но зато запоминается своя папка, куда юзер сохраняет уже скорректированный документ. Но вот с COPY - увы... "Мусора" нет, но и каждый раз выбирать из каталога нужный путь, да он еще по сети... Вижу как вариант запоминать путь к папке где-нибудь. (в свойстве, переменной, базе) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2016, 19:58 |
|
|
start [/forum/topic.php?fid=41&fpage=19&tid=1582156]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
99ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 260ms |
total: | 451ms |
0 / 0 |