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

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

11 Август 2022, 02:15 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

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

Сообщений: 1


« Стартовое сообщение: 13 Июнь 2022, 06:28 »

Можно ли как-то отобразить непечатаемые символы в электронной таблице LibreOffice Calc?
Большое спасибо!!!
Записан
eeigor
Опытный пользователь
***
Offline Offline

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


« Ответ #1: 13 Июнь 2022, 08:15 »

Ну, что-то можно сделать. Например, произвести замену на их "описательное" значение (зд. использованы их ESC-последовательности, но в угловых кавычках для наглядности, можете удалить их: ‹›). Вот некоторые из них... Этот список Вы можете расширить сами.

Код:
Function FF() As String: FF = Chr(12): End Function  'Form Feed
Function LF() As String: LF = Chr(10): End Function  'Line Feed
Function CR() As String: CR = Chr(13): End Function  'Carriage Return
Function HT() As String: HT = Chr(9): End Function  'Horizontal Tab
Function VT() As String: VT = Chr(11): End Function  'Vertical Tab
Function CRLF() As String: CRLF = CR & LF: End Function
'Private Function NewLine() As String
' Const GUI_WINDOWS = 1
' If GetGUIType() = GUI_WINDOWS Then NewLine = CR & LF Else NewLine = LF
'End Function

Private Function Vis$(ByVal str$)
str = Replace(str, FF, "‹\f›")

str = Replace(str, LF & CR, "‹\n\r›")
str = Replace(str, CR & LF, "‹\r\n›")
str = Replace(str, CR, "‹\r›")
str = Replace(str, LF, "‹\n›")

' Insert a line break.
str = Replace(str, "‹\n\r›", "‹\n\r›" & LF & CR)
str = Replace(str, "‹\r\n›", "‹\r\n›" & CRLF)
str = Replace(str, "‹\r›", "‹\r›" & CR)
str = Replace(str, "‹\n›", "‹\n›" & LF)

str = Replace(str, HT, "‹\t›")
str = Replace(str, VT, "‹\v›")

str = Replace(str, " ", "·")

Vis = str
End Function

Добавьте модуль. Вставьте код выше.
Передайте текст в функцию Vis(), и символы будут "визуализированы". Чаще всего мне приходится отображать пробелы: строка Replace(str, " ", "·")
Вы можете использовать эту функцию прямо на листе.

Примечание. В ОС Windows и Linux VBA константа vbNewLine различается (2 символа и один соответственно), функция NewLine закомментирована и не используется.

На скриншоте в ячейку D31 введён текст с переносом строки. Рядом показан результат визуализации (формула введена в ячейку E31), как то: перевод строки и пробел. Однако при вставке текста из текстового редактора все эти символы заменяются пробелами.
Поясните Вашу проблему.


* Снимок экрана от 2022-06-13 08-45-40.png (5.45 Кб, 356x50 - просмотрено 9 раз.)
« Последнее редактирование: 13 Июнь 2022, 09:59 от eeigor » Записан

Ubuntu 18.04 LTS • LibreOffice 7.3.5.2 Community
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

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