Модератор
2892 / 1750 / 178
Регистрация: 19.02.2011
Сообщений: 6,441
1

LibreOffice Calc: копирование листа

31.12.2021, 01:17. Показов 1631. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно ли скриптом копировать текущий лист с заданием его нужного имени? Как это сделать?
В идеале копируемый лист найти. Алгоритм таков, что большинство страниц имеют имя, представляющее собой дату; нужно найти лист с последней датой и скопировать его с новым именем - текущей датой.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.12.2021, 01:17
Ответы с готовыми решениями:

LibreOffice Calc - диаграммы
Подскажите, пожалуйста. Не могу понять как вместо цифр 1, 2, 3 и т. д. идущих по горизонтальной оси...

LibreOffice Calc плавная прокрутка
В LibreOffice Calc по умолчанию прокрутка дискретная, по строчкам. Это значит, что мы тянем...

Как в LibreOffice Calc лист очистить от всего?
Здравствуйте. выполнил: правка, выделить всё, очистить содержимое и при нажатии ctrl+home...

[LibreOffice Calc] Выделение ячеек, содержащих текст
В microsoft excel выделение ячеек содержащих определенный текст очень просто, выделяешь диапазон...

[LibreOffice Calc] Выделение ячеек, содержащих текст
Как выделить заливкой фона все ячейки, в которых содержится заданный текст? В MS Excel это можно...

5
211 / 144 / 69
Регистрация: 21.09.2016
Сообщений: 568
10.01.2022, 13:28 2
А пример приложить, в каком формате имена листов?
0
Модератор
2892 / 1750 / 178
Регистрация: 19.02.2011
Сообщений: 6,441
11.01.2022, 22:47  [ТС] 3
Garic73, вот так: 27.11.21, этот вариант должен стать 28.11.21

P.S. уже и ответа не ждал
0
211 / 144 / 69
Регистрация: 21.09.2016
Сообщений: 568
12.01.2022, 11:18 4
Лучший ответ Сообщение было отмечено TanaTiX как решение

Решение

TanaTiX, проверяйте.
ps переименуйте файл в *.ods (иначе не получается загрузить)
Вложения
Тип файла: zip TestCopySheets.zip (10.7 Кб, 6 просмотров)
1
Модератор
2892 / 1750 / 178
Регистрация: 19.02.2011
Сообщений: 6,441
17.01.2022, 22:17  [ТС] 5
Огромное спасибо. Непривычный для меня синтаксис. Маленький нюанс. Как обработать исключение, если страница с текущей датой уже создана? Например, показать информационное сообщение (MsgBox)


Visual Basic
1
2
3
4
5
6
7
8
9
sub CopySheet
    oSheets = ThisComponent.Sheets
    max_ = 0
    array1()=ThisComponent.sheets().getElementNames()
    For i = LBound(array1()) to UBound(array1())
    if max_ < cdate(array1(i)) then max_ = cdate(array1(i))
    Next i
    oSheets.copyByName(format(max_,"dd.mm.yy") , format(date,"dd.mm.yy"), oSheets.getCount())
End Sub
0
211 / 144 / 69
Регистрация: 21.09.2016
Сообщений: 568
18.01.2022, 11:36 6
Цитата Сообщение от TanaTiX Посмотреть сообщение
Как обработать исключение
вместо 8 строки
PureBasic
1
2
3
4
5
If max_ = Date Then 
    msgbox "Лист с текущей датой уже есть"
    else
    oSheets.copyByName(format(max_,"dd.mm.yy") , format(date,"dd.mm.yy"), oSheets.getCount())
    End if
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.01.2022, 11:36
Помогаю со студенческими работами здесь

LibreOffice calc Заменить часть ячейки другой ячейкой
Добрый день, мне нужна помощь. Есть большая таблица, нужно найти и заменить некоторые элементы,...

В LibreOffice Calc действие Повторить (Ctrl+Shift+Y) ломает итеративные вычисления
Здравствуйте, друзья! Часто в своей работе использую действие Повторить (F4) в Excel. С его...

Скопированная в другую книгу Calc формула теряет имя листа и заменяет его на "Лист3". Как быть?
Уважаемые специалисты, добрый день. Прошу совета. Суть вопроса: При копировании формулы из...

Копирование с листа на лист
Помогите с копированием выборочных позиций с листа на лист. Исходные данные: лист2 на Лист3 нужно...

Копирование/перенос данных с 1-го листа на 2-ой
Добрый день! Проблема такая. Файл Excel заведомо формируется сам, не пользователем (то есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru