Известная проблема Excel — при открытии любых файлов включается автоматическое преобразование данных в даты. Причем отключить эту опцию в самом Excel никак нельзя (ссылка).
Скрипт позволяет работать с файлом csv и txt, как обычно, в Excel без всяких извращений типа апострофы перед данными, пробелы/знак ‘=’ и другие супер-мега символы для изменения поведения Excel. Просто открываем скриптом нужный файл, открывается стандартный Excel, дальше каждый работает как бог дал умеет.
Запуск
Запустить можно классическим способом как обычную программу или скрипт с параметром, например, через консоль cmd и либо перетаскиванием файла на скрипт

Я лично рекомендую привязать выполнение скрипта к формату файла CSV или CSVD
Привязка формата CSV/CSVD к скрипту Excel-CSVD
Самый просто способ привязки приложения в Windows — это вызвать правой кнопкой мышки контекстное меню файла из проводника и выполнить следующее

Выбрать пункт меню Открыть с помощью (1) — Выбрать приложение (2) — Нажать на кнопку Обзор — Указать путь до скрипта exe. После этого появится дополнительное меню с вызовов этого скрипта, как показано стрелочкой на картинке выше.
Для файла формата CSVD можно отметить галочку «Использовать выбранную программу для всех файлов такого типа».

Лучше всего положить скрипт в папку типа C:\Soft.
Не рекомендую закидывать в папки c:\Program Files или c:\Program Files (x86), так как Windows требует повышенных прав для этих папок, также не советую держать на рабочем столе Windows.
Ограничения
- Скрипт специально работает только с форматами csvd и txt. Формат csvd — это обычный файл формата csv с добавленной буквой D.
Почему я рекомендую изменять формат на csvd? Для того, чтобы Excel, запущенный обычным способом, не дал пользователю сломать файл при сохранении. Пользователь может открыть файл обычным щелчком и сохранить его, навсегда изменив данные на даты и всякую ерунду. Для формата csvd делается привязывание к скрипту, и пользователь при щелчке на файл всегда открывает правильный Excel. Cохранение не убивает формат колонок. При ооооочень! большом желании можно работать со скриптом в формате csv, но предупреждаю, сломанные и неправильно сохраненные Excel’ем данные будут постоянно появляться, так как кто-то точно забудет и откроет обычным Excel. Проверено 🙂 - При открытии все колонки будут текстовые. Отсюда следует, что цифры будут сортироваться как попало, формулы работать через знак = не будут, пока через свойство колонки не будет изменен тип с Текст на Общий или Формула.
- Скрипт работает через com Excel.Application, c Excel заменителями работать не будет, если они только не поддерживают модель объектов Excel.
- По умолчанию используется разделитель «запятая». Если надо другой символ, то надо поменять в скрипте vbs (что поменять)
- В скрипте нет защиты от использования в названии колонок разделителя запятой. При желании это можно уже доработать самому.
Сборка скрипта VBS в exe
Любой скрипт vbs можно собрать в формат exe с помощью программы Vbsedit (ссылка). Это необязательно для работы, можно юзать и в формате vbs. Кому как удобнее!
Версии
1.2: исправлено с автоматического определения Excel формата разделитель или фиксированная ширина на разделитель
1.0: init
Скачать
формат exe (link)
sha256 e112fb54588fc29bafa383c5431d666eb875bff383dcfd7cdcddd35763c51abe
формат vbs (link)
формат exe без привязки к формату .csvd (link)
sha256 7d8405b2f88253a7a9f6ce3324c9e6224db8b356810ebfa7a673db4b48ee167d
формат vbs без привязки к формату .csvd (link)