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

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

18 Сентябрь 2019, 16:58 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Сообщений: 104


« Стартовое сообщение: 18 Апрель 2013, 08:42 »

Помогите! Очень нужен пример диалогового окна с макросом для ввода данных в таблицу с пятнадцатью столбцами (один текстовый остальные числовые).
Записан
Серж
Участник
**
Offline Offline

Сообщений: 14


WWW
« Ответ #1: 26 Апрель 2013, 12:28 »

Ну, например, для диалога с одним текстовым полем (в примере названо TextField1) и одним числовым полем (в примере с именем NumericField1) на кнопку "записать в таблицу" можно назначить что-то вроде этого:

Sub InsertData

n = 1 'поиск первой свободной строки таблицы
UCell = ThisComponent.Sheets(0).getCellRangeByName("A" & CStr(n))
While Not(UCell.getType() = com.sun.star.table.CellContentType.EMPTY)
n = n + 1
UCell = ThisComponent.Sheets(0).getCellRangeByName("A" & CStr(n))
Wend
'запись данных с формы на лист
ThisComponent.Sheets(0).getCellRangeByName("A" & CStr(n)).Value = n – 1
ThisComponent.Sheets(0).getCellRangeByName("B" & CStr(n)).String = MyDlg.GetControl("TextField1").Text
ThisComponent.Sheets(0).getCellRangeByName("C" & CStr(n)).Value = CSng(MyDlg.GetControl("NumericField1").Value)

End Sub

Надеюсь, как создать диалог, и то, что его следует запускать отдельным макросом вида

Dim MyDlg As Object

Sub RunDialog
MyDlg = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
MyDlg.execute()
End Sub

для вас не секрет.

На всякий случай, адрес оригинальной статьи
« Последнее редактирование: 26 Апрель 2013, 18:14 от Серж » Записан

andreya81
Форумчанин
***
Offline Offline

Сообщений: 104


« Ответ #2: 29 Апрель 2013, 13:19 »

Спасибо огромное.
Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

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