Сохранение документа под нужным именем

Автор kos111, 30 апреля 2012, 21:13

0 Пользователи и 1 гость просматривают эту тему.

kos111

Dim oProp(0) As New com.sun.star.beans.PropertyValue
Dim sUrl As String
sUrl = "file:///C:/new/newdoc.odt"

oProp(0).Name = "Overwrite"
oProp(0).Value = False
ThisComponent.storeAsURL(sUrl, oProp()

Ребят помогите , как можно связать имя создоваемого док (newdoc) c текстовым полем в документе или в диалоге , чтоб задавать имя сохроняемого документа ?
или чтото другое можете подсказать? Макрос сохранен в шаблоне , и получаеться что файлы заменяються их дург на друга ...что не есть гуд

JohnSUN

Добро пожаловать на форум!
В состав офиса входит несколько стандартных библиотек макросов. Одна из них - Tools - содержит массу коротких процедур и функций почти на все случаи.
Например, процедура GetFileName выводит окно стандартного диалога FilePicker и результат выбора имени файла вписывает в строку oRefModel. Имеется в виду, что ты создаешь свой диалог с элементом управления "Имя файла" и кнопкой. На кнопку вешаешь вызов этой процедуры.
Можно переписать эту процедуру в виде функции, чтобы она просто возвращала имя файла в виде строки и тогда в твоем макросе строчка
sUrl = "file:///C:/new/newdoc.odt"
просто изменится на что-то вроде
sUrl = GetFileNameToSave()
Кроме того, в той же библиотеке есть функция StoreDocument(), которая занимается именно сохранением документа с указанным именем. Она сама выполняет StoreAsUrl, так что сможешь этот фрагмент кода из своего макроса убрать.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне