Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

7 Март 2021, 04:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Доступно и просто о работе в офисных пакетах
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Сохранение документа под нужным именем  (Прочитано 3524 раз)
0 Пользователей и 1 Гость смотрят эту тему.
kos111
Новичок
*
Offline Offline

Сообщений: 1


« Стартовое сообщение: 30 Апрель 2012, 20:13 »

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
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #1: 3 Май 2012, 23:22 »

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

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!