Описание команды


xlsxt

Извлечение из XLSX файлов текстовой информации.

xlsxt=%L,%WL||LISTF<>||PS<>||FOLDC<>||FOLDM<>||LISTC<>||FLST<>||cliplist||$var_aa||$GLOBALNAME||Path, %p, %t||Numbers, ||delimx<>, ||code<>, ||formt<>, ||upd<>, ||progres<>

Параметры:

1-й обязательный параметр. Может иметь несколько вариантов:
%L,
%WL
Список выделенных файлов. Также может использоваться путь к файлу списка полных путей файлов %P%N. см. Дополнение №7 или с:\List.txt
LISTF<>Список заданных объектов. см. Дополнение №22.
PS<>Список объектов каталога. см. Дополнение №22.
FOLDC<>Список объектов содержимого каталогов. см. Дополнение №22.
FOLDM<>Список выделенных объектов и всех объектов в подпапках. см. Дополнение №22.
LISTC<>Список объектов из выделенных без дубликатов. см. Дополнение №22.
FLST<>Смешанные списки объектов по заданному списку. см. Дополнение №22.
cliplistСписок полных путей объектов из буфера обмена.
$var_aaМассив. Переменная $var_a... - массив путей, созданный в команде exect.
$GLOBALNAMEМассив. Список путей глобальной переменной см. Дополнение №23.
2-й обязательный параметр.
Path, %p, %tПуть. Параметр Path(|Mode), где:
  Path- путь назначения, где создаются текстовые файлы. см. Дополнение №7 c:\Test\
  Mode - режим:
    0 - не заменять объекты при совпадении (добавляется счётчик).
    1 - заменять (по умолчанию).
    2 - дописывать в конец файла.
    4 - пропускать.
3-й обязательный параметр.
NumbersЛист Строка Колонка. Номера прописываются через разделитель |
  Пример: 2|3|5 - со 2-го листа, с 3-й строки и последующие, с 5-й колонки и последующие.
  Может прописываться диапазон через разделитель :
  Пример: 2:-1|3:10|4:4 - с 2-го и последующих листов, с 3-й по 10-ю строки, только с 4-го столбца.
  Информация каждого листа сохраняется в отдельный именной файл.
  Так же поддерживается получение информации с нескольких диапазонов.
  При этом диапазоны прописываются через разделитель !!
  Можно указать строку разделяющую разные диапазоны, она должна начинаться с символа #
  Пример: 1|5:8|6:6!!#@CRLF!!1|16:-1|6:6 - с первого листа с 6 колонки два диапазона разделённые переносом строки: с 5-й по 8-ю строки и с 16-й и до конца.
  Используется -1 для обозначения конца листов, строк, столбцов.
Дополнительные параметры:
delimx<>Оформление. Параметр delimx<Delimeter(!!Left!!Right)>, где:
  Delimeter - разделитель между ячейками (по умолчанию табуляция).
  Left - вставка перед каждой строкой.
  Right - вставка после каждой строки.
code<>Кодировка. Параметр code<Number>, где Number:
  0 - ANSI 1251.
  1 - UTF-16 LE 1200.
  2 - UTF-16 BE 1201.
  3 - UTF-8 с BOM.
  4 - UTF-8 без BOM.
Так же кодировку по умолчанию можно прописать в TCIMG.ini в ключе FileCoding секции [Setting].
formt<>Преобразование текстовой информации. см. Дополнение №15.
upd<>Обновление панели.
  Описание
Параметр upd<Number>, где Number - значение обновления панели(ей) Total Commander:
  1 - обновить активную панель.
  2 - обновить обе панели, вернуться в активную.
  3 - обновить другую панель, вернуться в активную.
  4 - обновить активную панель, перейти в другую.
  5 - обновить другую панель, остаться в другой.
  6 - обновить обе панели, остаться в другой.
  7 - не обновлять (по умолчанию, т.е. если параметр не прописан, то панели не обновляются).
progres<>Прогресс бар. Параметр progres<> - если указан, то при операции будет запущен прогресс бар.
Учитывается ключ MsBoxAtTheCompletion в TCIMG.ini в секции [Setting].

Примечания:

С помощью команды можно так же извлекать информацию из файлов XLSM, XLAM, XLTX.

Дополнительные символы, которые можно использовать в строке: "@CR" - Символ возврата каретки, Chr(13), "@LF" - Символ перевода строки, Chr(10), "@CRLF" = @CR & @LF, "@TAB" - Символ Tab, Chr(9).

Если в команде(ах) необходимы кавычки, то используются две одинарных кавычки (апострофа) '' , если в команде необходим пробел - используются два символа тильды ~~.

Просматривать текстовую информацию листов табличного файла можно командой:

infos=3||3||%P%N||1 ;; просмотреть текстовую информацию 1-го листа табличного файла под курсором xlsx


Команда имеет возможность передавать другим командам информацию через именные глобальные переменные. см. Дополнение №23

Имя переменнойОписание
GLOBALXLSXT0массив входных данных (список исходных путей из которых необходимо извлечь информацию)
GLOBALXLSXTмассив выходных данных (список путей созданных файлов с извлечённой информацией)

См. также:

chset, count, extra, extrf, stext, textt, textx, txtsp, txtss, words, xlsxf

Примеры:
 Как создать кнопку?

xlsxt=%WL||"%t"||1 ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||1:-1 ;; скопировать из выделенных xlsx файлов текстовую информацию со всех листов и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||1:-1||progres<>||upd<3> ;; скопировать из выделенных xlsx файлов текстовую информацию со всех листов и сохранить в именные файлы txt в другую панель с прогрессом и обновить другую панель

xlsxt=%WL||"%t"||1||code<1> ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель в кодировке UTF-16 LE 1200

xlsxt=%WL||"%t"||1||code<2> ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель в кодировке UTF-16 BE 1201

xlsxt=%WL||"%t"||1||code<3> ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель в кодировке UTF-8 с BOM

xlsxt=%WL||"%t"||1||code<4> ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель в кодировке UTF-8 без BOM

xlsxt=%WL||"%t"||1||formt<63> ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель, удалив все пустые строки

xlsxt=%WL||"%t"||1||formt<64,63> ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель, удалив всю табуляцию и пустые строки

xlsxt=%WL||"%t"||1||progres<> ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа и сохранить в именные файлы txt в другую панель с прогрессом

xlsxt=%WL||"%t"||1|1|1:1 ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа только 1-го столбца и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||1|1|2:5 ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа со 2-го по 5-й столбец и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||1|2 ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа, начать со 2-й строки и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||1|2:2 ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа только 2-й строки и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||1|5:10 ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа с 5-й по 10-й строки и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||1|5:10|2:5 ;; скопировать из выделенных xlsx файлов текстовую информацию с 1-го листа с 5-й по 10-й строки со 2-го по 5-й столбец и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||2 ;; скопировать из выделенных xlsx файлов текстовую информацию с 2-го листа и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||2:-1 ;; скопировать из выделенных xlsx файлов текстовую информацию со всех листов, начав со 2-го и сохранить в именные файлы txt в другую панель

xlsxt=%WL||"%t"||2||delimx<+++!!000!!111> ;; скопировать из выделенных xlsx файлов текстовую информацию с 2-го листа и сохранить в именные файлы txt в другую панель, разделитель +++, в начало каждой строки вставить 000, в конец 111

xlsxt=%WL||"%t"||2||delimx<+++!!000!!111> ;; скопировать из выделенных xlsx, xlsm файлов текстовую информацию с 2-го листа и сохранить в именные файлы txt в другую панель, разделитель +++, в начало каждой строки вставить 000, в конец 111


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru