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

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

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

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

Сообщений: 12


« Ответ #15: 16 Август 2015, 21:56 »

Hasim, макрос нормально выполняет координатное выделение по щелчку кнопки мыши и нормально отрабатывает координатное выделение при "перемещении" активной ячейки стрелками на клавиатуре, после запуска Example_SelectionChangeListener. Но после прекращения работы, запуском Remove_Listener, последнее координатное выделение сохраняется. Можно ли устранить этот небольшой недостаток?
« Последнее редактирование: 16 Август 2015, 21:58 от Донченко Валерий » Записан
Hasim
Форумчанин
***
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #16: 17 Август 2015, 20:04 »

Можно.

* строка-столбец(1).ods (14.89 Кб - загружено 17 раз.)
Записан
Донченко Валерий
Участник
**
Offline Offline

Сообщений: 12


« Ответ #17: 17 Август 2015, 21:53 »

Можно.
После использования макроса, при закрытии документа, появляется запрос на сохранение изменения документа. Про какие изменения идет речь, если работа макроса была завершена корректно и никаких видимых изменений в документе нет?
Записан
rami
Гуру
*******
Offline Offline

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


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #18: 17 Август 2015, 23:40 »

После использования макроса, при закрытии документа, появляется запрос на сохранение изменения документа. Про какие изменения идет речь, если работа макроса была завершена корректно и никаких видимых изменений в документе нет?
Изменения — это раскрашивание и перекрашивание ячеек. Речь идёт о промежуточных изменениях, которые в конечном итоге ничего не меняют, можете их сохранять, или не сохранять, как удобно.
Записан

Донченко Валерий
Участник
**
Offline Offline

Сообщений: 12


« Ответ #19: 18 Август 2015, 10:53 »

Изменения — это раскрашивание и перекрашивание ячеек. Речь идёт о промежуточных изменениях, которые в конечном итоге ничего не меняют, можете их сохранять, или не сохранять, как удобно.
А каким образом окрашиваются ячейки, если выделяется столбец или строка нажатием на буквенное или цифровое обозначение, ведь после этих действий никаких изменений в документе не происходит? Может для макроса позаимствовать такой способ окрашивания?
« Последнее редактирование: 18 Август 2015, 12:42 от Донченко Валерий » Записан
rami
Гуру
*******
Offline Offline

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


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #20: 18 Август 2015, 12:35 »

А каким образом окрашиваются ячейки, если выделяется столбец или строка нажатием на буквенное и цифровое обозначение, ведь после этих действий никаких изменений в документе не происходит? Может для макроса позаимствовать такой способ окрашивания?
В этом случае ячейки не раскрашиваются, а подсвечиваются выделенные ячейки (это тот вариант, который я предложил вначале). При подсветке нет никаких изменений в документе, а при раскрашивании есть.
Записан

Донченко Валерий
Участник
**
Offline Offline

Сообщений: 12


« Ответ #21: 18 Август 2015, 12:42 »

В этом случае ячейки не раскрашиваются, а подсвечиваются выделенные ячейки (это тот вариант, который я предложил вначале). При подсветке нет никаких изменений в документе, а при раскрашивании есть.
А совместить варианты не получится?
Записан
Донченко Валерий
Участник
**
Offline Offline

Сообщений: 12


« Ответ #22: 3 Сентябрь 2015, 07:53 »

Имеет ли смысл код?
Код:
Private Sub CurrentController.setThisComponent.CurrentController.ActiveSheet(vSheet);ionChange(ByVal Target As Dim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ActiveSheet[n]oSheet.getCellRangeByName($1))
Dim WorkDim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ActiveSheet[n]oSheet.getCellRangeByName($1) As Dim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ActiveSheet[n]oSheet.getCellRangeByName($1)
Dim wi As Window
Set wi = ActiveWindow
If Target.Cells.Count > 1 Then Exit Sub
ThisComponent.LockControllers
Set WorkDim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ActiveSheet[n]oSheet.getCellRangeByName($1) = wi.VisibleDim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ActiveSheet[n]oSheet.getCellRangeByName($1)
Intersect(WorkDim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ThisComponent.CurrentController.ActiveSheet[n]ThisComponent.CurrentController.select(oSheet.getCellDim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ActiveSheet[n]oSheet.getCellRangeByName($1)ByName(, Target.EntireRow)))
Intersect(WorkDim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ThisComponent.CurrentController.ActiveSheet[n]ThisComponent.CurrentController.select(oSheet.getCellDim oSheet as Object[n]oSheet = ThisComponent.CurrentController.ActiveSheet[n]oSheet.getCellRangeByName($1)ByName(, Union(Target.EntireRow, Target.EntireColumn))))
Target.Activate
End Sub
Записан
rami
Гуру
*******
Offline Offline

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


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #23: 3 Сентябрь 2015, 08:35 »

Имеет ли смысл код?
Для дезинформации врага — имеет смысл Крутой. Какой-то в кучу сваленный код.
Записан

Донченко Валерий
Участник
**
Offline Offline

Сообщений: 12


« Ответ #24: 5 Сентябрь 2015, 20:09 »

Это я попробовал, как работает онлайн-переводчик  Смеющийся
Записан
Сигма
Участник
**
Offline Offline

Сообщений: 31


« Ответ #25: 13 Февраль 2017, 14:27 »

Огромное спасибо, давно искал такую штуку. Большая просьба, напишите в какой строке кода можно изменить цвет подсвечивания - цвет по умолчанию немного не устраивает.
Записан
rami
Гуру
*******
Offline Offline

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


MacBook Pro, LibreOffice и Apache OpenOffice


« Ответ #26: 13 Февраль 2017, 14:39 »

Большая просьба, напишите в какой строке кода можно изменить цвет подсвечивания - цвет по умолчанию немного не устраивает.
О каком варианте речь? Как называется макрос и в каком ответе или документе его искать?
Записан

Сигма
Участник
**
Offline Offline

Сообщений: 31


« Ответ #27: 13 Февраль 2017, 14:59 »

Сейчас попробовал все варианты. Мне нужен такой, который не перекрашивает заливку и более того, если активная ячейка заливается, цвет этой заливки не должен пропадать (и конечно, есть возможность редактирования, изменения цвета текста и пр.). Насколько я понимаю, ближе всего к этому последний выложенный Вами вариант (только в нем не сохраняется вновь сделанная заливка). В его коде и хотелось бы узнать, где задается цвет подсветки. С цветом подсветки разобрался. И еще... если можно, подскажите как импортировать макрос в другой документ... тупо скопировал его текст, до сохранения работает, после сохранения, закрытия и открытия последние ячейки залиты цветом подсветки.
« Последнее редактирование: 13 Февраль 2017, 15:07 от Сигма » Записан
economist
Форумчанин
***
Offline Offline

Сообщений: 965


« Ответ #28: 13 Февраль 2017, 16:44 »

Сигма - макросы сохраняются в формате ODS.
Записан

Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...
Страниц: « 1 2   Вверх
  Печать  
 
Перейти в:  

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