Заголовок листа из текста/значения в ячейке

Автор fujica, 1 марта 2019, 22:29

0 Пользователи и 1 гость просматривают эту тему.

fujica

Продолжу тему, надеюсь это не запрещено.
Как можно значение/текст из ячейки установить в название документа?

JohnSUN

Не запрещено, но настоятельно не рекомендуется - те кто будут искать решение своих проблем, не смогут легко найти нужную тему. Поэтому в следующий раз лучше создать новую тему.
На короткий вопрос про название документа - короткий ответ:
Выделить ячейку с текстом.
Нажать Ctrl+C (скопировать текст в буфер обмена)
Нажать Ctrl+Shift+S (вызвать Файл-Сохранить как...)
Нажать Ctrl+V (вставить скопированный текст в поле Имя файла)
Нажать Enter (сохранить файл с новым именем)

Для вызова макроса, который это будет делать автоматически, потребуется приблизительно столько же действий. А чтобы написать макрос, кнопок нужно будет нажать гораздо больше.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

fujica

#2
Я немного о другом...
Чтобы название таблицы менялось в след за значением\текстом в ячейке.

fujica

Хорошо, буду знать
Цитата: JohnSUN от  2 марта 2019, 09:54
Не запрещено, но настоятельно не рекомендуется - те кто будут искать решение своих проблем, не смогут легко найти нужную тему. Поэтому в следующий раз лучше создать новую тему.

JohnSUN

Цитата: fujica от  2 марта 2019, 19:09
Я немного о другом...
Чтобы название таблицы менялось в след за значением\текстом в ячейке.
Если ты считаешь, что так вопрос стал понятнее, то должен тебя огорчить - ни фига не понятнее
Давай по чуть-чуть, по кусочку.
Что ты имеешь в виду под "названием таблицы"? Говоришь, что "немного о другом" - значит не о заголовке окна, не об имени документа?
Или все-таки о названии документа (в первом варианте вопроса вроде бы о нём шла речь) и хочется это название получить в ячейке?
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

fujica

#5
Есть документ АААА.
В нем есть лист Х и У.
В лист Х есть ячейка А1 в которую записывается значение по формуле, пусть будет такая: А1 =ДАТА(хххх)-ДАТА(уууу)/ДАТА(хххх)-СЕГОДНЯ() отформатированная как процент.
Лист Х открывается не часто, в отличии от У.
Лист Х должен менять своё название, вставляя значение из ячейки А1.

JohnSUN

Надпись на ярлыке?
Function renameSheet(sName As String) As String
ThisComponent.getSheets().getByIndex(0).setName(sName)
renameSheet = ThisComponent.getSheets().getByIndex(0).getName()
End Function
Эта функция будет работать только если она расположена на листе Y.
В какой-то ячейке пишешь =RENAMESHEET($'X'.A1). Если значение в A1 изменится, то лист будет переименован и формула самостоятельно изменится.

Но, если честно, это плохая идея - имена листов используются в самых разных местах книги, могут испортиться некоторые формулы, которые ссылались на старое имя. Обычно так не делают, не принято
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

fujica

Ага, понятно.
В этом макросе я смог разобраться.  ;D
Благодарю.

bigor

Цитата: fujica от  2 марта 2019, 21:39В этом макросе я смог разобраться
а я нет :( или условие не понял. Фунция переименовывает только первый лист, а я понял условие, что нужно любой по желанию.
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут