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

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

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

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

Сообщений: 2


« Стартовое сообщение: 11 Март 2016, 14:25 »

Макрос в Exel выполняет следующую функцию: при нажатии назначенного сочетания клавиш увеличивает значение заданной ячейки на 1.
Листинг в VB:
Код:
Sub Макрос2()
    i = Worksheets("Лист1").Cells(1, 2)
    i = i + 1
    Worksheets("Лист1").Cells(1, 2) = i
End Sub

Это необходимо для решения задачи по автоматизации регистрации двигательной активности лабораторных крыс. Для регистрации 20 - 40 животных использую контроллер клавиатуры и под Виндой уперся в невозможность отключения повторения при нажатой клавише.

Как этот макрос будет выглядеть в OO Basic?
Записан
rami
Гуру
*******
Offline Offline

Пол: Мужской
Сообщений: 2 648


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #1: 11 Март 2016, 15:27 »

Макрос в Exel выполняет следующую функцию: при нажатии назначенного сочетания клавиш увеличивает значение заданной ячейки на 1.
Листинг в VB:
Код:
Sub Макрос2()
    i = Worksheets("Лист1").Cells(1, 2)
    i = i + 1
    Worksheets("Лист1").Cells(1, 2) = i
End Sub

Это необходимо для решения задачи по автоматизации регистрации двигательной активности лабораторных крыс. Для регистрации 20 - 40 животных использую контроллер клавиатуры и под Виндой уперся в невозможность отключения повторения при нажатой клавише.

Как этот макрос будет выглядеть в OO Basic
Макрос будет выглядеть так:
Код:
Sub Macros2() 'Имена функций, процедур и переменных должны быть написаны латиницей
oCell=ThisComponent.Sheets(0).getCellRangeByName("B1")
oCell.setValue(oCell.Value+1)
End Sub
Записан

1van
Новичок
*
Offline Offline

Сообщений: 2


« Ответ #2: 11 Март 2016, 16:50 »

rami, спасибо, выручил!
Макрос работает.
Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

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