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

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

29 Июнь 2017, 01:48 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Сообщений: 12


« Стартовое сообщение: 30 Январь 2012, 13:57 »

Пожалуйста, помогите написать макрос для кнопки, открывающей из одной формы другую форму. Знаю, здесь уже было подобное обсуждение, я его видела и на основе советов написала какой-то кривой макрос. Видите ли, я в жизни не имела дела с программированием, да и руки не из того места растут.  В замешательстве Но "партия сказала надо", поэтому приходится.  Грустный

Мой макрос имеет код:

Sub OpenForm

FormKnopka=ThisComponent.Parent
FormDocuments=Standard
GetByName("Показания"). open

End Sub


Но душа ООо этого безобразия не принимает, выдаёт синтаксическую ошибку.  Злой

Как и что поправить, понять не могу, требуется помощь.
Заранее спасибо!

[вложение удалено Администратором]
Записан
neft
Постоялец
***
Offline Offline

Сообщений: 189


« Ответ #1: 30 Январь 2012, 14:15 »

1. Формы "Показания" не существует в вашей природе.
2. Попробуйте для существующей в вашей природе формы "OPLATA"
Код:
Sub OpenForm
thisComponent.Parent.FormDocuments.getByName("OPLATA").open
end Sub
Записан
Print-out
Новичок
*
Offline Offline

Сообщений: 12


« Ответ #2: 30 Январь 2012, 15:47 »

Ой, чёрт, я и забыла, что удалила форму "Показания"))))))). Вот идиотка!  Да уж...
neft, спасибо большое, код заработал!
Записан
Ильдар
Новичок
*
Offline Offline

Сообщений: 17


« Ответ #3: 21 Октябрь 2015, 11:38 »

Попробуйте для существующей в вашей природе формы "OPLATA"
в либре не существует штатного макроса для открытия формы? я в базе данных хочу кнопку открытия другой формы на основании данных из первоначальной формы. мне нужно писать свои макросы для этого?
Записан
rami
Гуру
*******
Offline Offline

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


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #4: 21 Октябрь 2015, 13:23 »

в либре не существует штатного макроса для открытия формы? я в базе данных хочу кнопку открытия другой формы на основании данных из первоначальной формы. мне нужно писать свои макросы для этого?
Зачем "штатные макросы" Непонимающий, когда есть "внештатные" Крутой, и писать ничего не надо, всё давно написано, ищите Шокирован на форуме (в этой теме neft привёл макрос), а если будут конкретные вопросы по конкретной базе и форме, приложите образец базы и формы.
Записан

Alexandr Polbin
Новичок
*
Offline Offline

Сообщений: 5


« Ответ #5: 12 Февраль 2017, 12:10 »

Пытаюсь написать макрос на открытие формы ReestrForm кнопкой из формы SimpleForm:
Sub OpenFormReestrMacr
   Dim SimpleForm As Object
   Dim ReestrForm As Object
   SimpleForm=ThisComponent
   ReestrForm=Standard   
   thisComponent.Parent.FormDocuments.getByName("ReestrForm").open
End Sub
                 Ругается, что объектная переменная не установлена.
                 Помогите, пожалуйста. Не программист, до этого больше 10 лет создавал разные приложения в Access и все было нормально, а тут... сразу затык..
Записан
rami
Гуру
*******
Offline Offline

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


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #6: 12 Февраль 2017, 12:36 »

Ругается, что объектная переменная не установлена.
А что такое ReestrForm=Standard в приведённом вами макросе Непонимающий Уберите его и должно заработать.
« Последнее редактирование: 12 Февраль 2017, 12:39 от rami » Записан

JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

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


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


WWW
« Ответ #7: 12 Февраль 2017, 13:22 »

И - на всякий случай - лучше указать параметр для этой процедуры:
Код:
Sub OpenFormReestrMacr(oEvent As Variant)
Поскольку она вызывается как реакция на событие "кнопка нажата", то кнопка пытается сообщить макросу кто именно его запускает. Поэтому она - кнопка на форме - вызывает процедуру, ожидая, что та сможет принять информацию о событии через параметр. А параметра-то и нет
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
Alexandr Polbin
Новичок
*
Offline Offline

Сообщений: 5


« Ответ #8: 12 Февраль 2017, 14:51 »

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

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