1

У меня есть приложение, которое может импортировать данные из электронной таблицы Excel (.xls). Эта электронная таблица, в свою очередь, импортируется из файла CSV, который предоставляет шаблон для данных. Затем пользователь заполняет шаблон, сохраняет его в виде файла .xls и импортирует его в приложение.

Моя проблема заключается в том, что приложение, которое импортирует электронную таблицу, ожидает лист с именем Sheet1, но когда пользователь открывает шаблон CSV, Excel «импортирует» данные CSV в автоматически созданный лист с тем же именем, что и у файла CSV. Пример:

  1. Приложение X создает файл шаблона с именем January.csv
  2. Пользователь открывает файл January.csv в Excel, который создает рабочую таблицу с именем January. Они заполняют эту таблицу и сохраняют книгу как MonthlyData.xls.
  3. Приложение Y пытается импортировать данные из Sheet1 в MonthlyData.xls и завершается неудачно.

Я хотел бы найти способ сообщить Excel, что при открытии файла CSV он должен автоматически переименовать первый созданный лист на Sheet1 и не давать этому листу то же имя, что и у файла CSV, как это делается по умолчанию. Какие средства в моем распоряжении для этого?

1 ответ1

1

В CSV-файле нет такого понятия, как «рабочий лист»; следовательно, переименовать нечего. Положитесь на поведение, которое вы объяснили выше, и передайте имя файла от исходного шага к последнему шагу, чтобы процесс импорта XLS на шаге 3 знал, что на шаге 1 ожидается объект с именем original_filename .

CSV - это просто текстовый файл со значениями, разделенными запятыми, нет способа определить рабочий лист в файле CSV.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .