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

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

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

Войти
Новости: Часто задаваемые вопросы по LibreOffice и Apache OpenOffice.org
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Переделать макрос для Опен Офис Калк  (Прочитано 2050 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Радмила
Участник
**
Offline Offline

Сообщений: 9


« Стартовое сообщение: 3 Апрель 2016, 07:19 »

Всем привет
Не знала, что есть такой подводный камень.
Оказывается, макросы, написанные в Ексель, не работают в Опен Офис Калк.
Помогите, пожалуйста, переделать мои макросы для Калка.
Я смотрела примеры здесь на сайте, но мне не совсем понятен принцип замены.

В моем случае:
1. Макрос, открывающий и закрывающий книги, плюс вызывающий другой макрос

Цитата:
Sub PosCopy()
Dim lr&, wb As Workbook
    'Открываем файл с которого нужно скопировать данные
    Set wb = Workbooks.Open(ThisWorkbook.Path & "\Позиции.xls")
    Set wb = Workbooks.Open(ThisWorkbook.Path & "\Реестр приходов.xls")
    'Закрываем книги
    Workbooks("позиции.xls").Close
    Workbooks("реестр приходов.xls").Close
Call Pust_stroki
End Sub

Sub Pust_stroki()
Dim cell As Range: Application.ScreenUpdating = False
For Each cell In [a9:a18]
If cell.Value = 0 Then
cell.EntireRow.Hidden = True
End If
Next cell
End Sub

2. Макрос обычной печати при условии
Sub Print3()
If [H25] + [J25] +[p25]< 500 Then
    MsgBox "При сумме менее 500 руб. Aкт не составляется!", vbCritical + vbOKOnly
    Exit Sub
ElseIf [H25] + [J25] > 3000 Then
    If MsgBox("Расхождения подтверждены контролером?", vbExclamation + vbOKCancel) = 2 Then Exit Sub
End If
ActiveSheet.PrintOut, , 3
End Sub



3. Макрос двусторонней печати при условии
Sub Print2()
If [H25] + [J25] +[p25]< 500 Then
    MsgBox "При сумме менее 500 руб. Aкт не составляется!", vbCritical + vbOKOnly
    Exit Sub
ElseIf [H25] + [J25] > 3000 Then
    If MsgBox("Расхождения подтверждены контролером?", vbExclamation + vbOKCancel) = 2 Then Exit Sub
End If
ActiveSheet.PrintOut, , 3, 2
End Sub

На листе у меня было две кнопки, первой кнопке был назначен макрос PosCopy, а на второй Print3
А как в опен офис калк даже кнопку добавить, я не знаю.
Посмотрела в сервисе, параметрах, рисовании, ничего не смогла найти.

Спасибо за помощь.

Записан
Rafik
Форумчанин
***
Offline Offline

Сообщений: 87


« Ответ #1: 4 Апрель 2016, 07:29 »

Добавление кнопок в документ через "Вид" - "Панели инструментов" - "Элементы управления". На открывшейся панели щелчок по кнопке "Режим разработки". Значок, где нарисован неприличный жест "Фак ..." (в версии 4.2.2, для версий выше форма значка могла измениться). Затем выбираем кнопку и зажатой мышкой отмечаем границы кнопки в документе.

По макросам, к сожалению, у меня опыта кот наплакал, и поэтому подсказать не могу.
Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

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