Excel

Делитесь модулями
  • @GhostZ столкнулась с проблемой, что node js скрипт, дописывающий excel файл спаршенными данными, в итоге делает файл с ошибкой( бас проект прилагаю ссылкой https://disk.yandex.ru/d/e74LdJBjRPlUlw. Помогите, пожалуйста, разобраться, через node js что-то делаю первый раз(

    В проекте в переменной прописан путь к excel файлу-шаблону шаблон прилагаю тоже по ссылке https://disk.yandex.ru/i/Rqza4V-Fny3-5g

    Сейчас шаблон без ошибок, потому что был пересохранен после открытия.

    Очень хочется понять где моя ошибка. Заранее спасибо 🤗

  • @Marrusa,

    1. Используйте модуль, а не Node.js
    2. Не используйте объединение ячеек
    3. Не устанавливайте массово стили, так как xlsx-populate имеет не лучшую их реализацию, просто установите стили на уже готовые записи в самом Excel

    Скрипт: church_parsing.xml
    Шаблон: template.xlsx

  • @GhostZ, спасибо! Объединение ячеек было важно по шаблону. А в модуле этой возможности нет( планируется ли добавить объединение ячеек в будущем в ваш модуль?

  • @Marrusa, нет

  • @GhostZ Начал осваивать модуль. Скрипт делает аккаунты и потом записывает данные в xlsx файл. Логика такая: Читает файл, получает количество элементов в списке и запись новых данных в область ячеек с учетом продолжения списка. Заполняется 6 ячеек. Какое то время все работает, потом файл бьется и летит ошибка "Error: Corrupted zip or bug: expected 10 records in central dir, got 0" . Что не так и как исправить? Может ли одновременная запись с разных потоком делать такое?

  • @Gryner said in Excel:

    @GhostZ Начал осваивать модуль. Скрипт делает аккаунты и потом записывает данные в xlsx файл. Логика такая: Читает файл, получает количество элементов в списке и запись новых данных в область ячеек с учетом продолжения списка. Заполняется 6 ячеек. Какое то время все работает, потом файл бьется и летит ошибка "Error: Corrupted zip or bug: expected 10 records in central dir, got 0" . Что не так и как исправить? Может ли одновременная запись с разных потоком делать такое?

    Для таких задач лучше просто в csv писать, если надо то его легко конвертировать в excel

  • @UserTrue Понял тебя, только у меня что то проблемы с кодировкой. Вроде юникод UTF-8 стоит, а в файле csv кирилица кракозябрами сохраняется.

  • @Gryner said in Excel:

    @UserTrue Понял тебя, только у меня что то проблемы с кодировкой. Вроде юникод UTF-8 стоит, а в файле csv кирилица кракозябрами сохраняется.

    Не сталкивался

  • @Gryner не только у тебя, если буквы русские то тут только костыль помогает через утилиту iconv, здесь есть подобные темы с примерами скриптов. У меня был заказ по парсингу в csv, я так и не смог победить и пришлось отменять, очень жалко

  • @GhostZ привет подскажи как вставить картинку в ячейку заранее спасибо

  • @Gryner Точно такая же ошибка стала появляться и теперь еще и эта "Error: Corrupted zip or bug: unexpected signature (\xDF\x5F\xE7\x9F, expected \x50\x4B\x03\x04)".Скрипт очень большой и работает в многопотоке,переделывать в csv не вариант.Никто не победил эти ошибки или хотя бы с чем может быть связано подобное?

  • не соответствует описанию несколько, в многопотоке синхронной записи не будет в случае, если
    у вас много операций подряд в многопотоке вставить строки на разные листы. Будет рассинхрон, то что должно быть в строке 10, окажется в 9. Как разом выполнить все эти операции, чтобы не было рассинхрона я не нашел

  • @nazar21015 это не проблема модуля своей всего, просто 10 поток может начать запись раньше 9 потока

  • короче оно багованое. Я придумал как обыграть, но оно просто тупит, то пишет в строку, то не пишет.
    Скину код завтра, зря вообще решил этим модулем пользоваться, только минус время

  • если вкратце, то, если вы уже записали в строку 4, а после этого идет операция в опаздывающем потоке в строку 3, то оно куда-то пропадает , пустая строка, может куда-то в строку последнюю не занятую написать, и все идет по жопе.

  • @nazar21015 Не удается повторить вашу проблему, не могли бы вы прикрепить тестовый скрипт?

    21.mp4

  • This post is deleted!
  • блин писал-писал и не сохранилось.

    короче, у меня есть дата 2000-01-01T00:00:00 нужно 01.01.2000
    нашел в кубике "Дата и время" блок "дату в строку" и используя формат dd.MM.yyyy получил желаемое.

  • У меня есть список ссылок ("https://tgstat.ru/channel/@ikniga") и когда я использую кубик "Запись на лист" то в первом столбце он пишет "https", а во втором "//tgstat.ru/channel/@ikniga". Как сделать что бы он писал всю ссылку в первую ячейку?

  • @karpyzamaxim2 в кавычки взять

    " + [[LINK]] + "
    

    тип expression. Или просто как expression записать, не помню точно уже, а проект не найду сейчас