Я завантажую багато файлів CSV в Excel, а деякі з них викликають попередження, коли Excel вважає, що це файл SYLK, а не CSV. Причина відома .
Як вимкнути це попередження? Чи є налаштування, групова політика, налаштування реєстру? Що-небудь?
Я завантажую багато файлів CSV в Excel, а деякі з них викликають попередження, коли Excel вважає, що це файл SYLK, а не CSV. Причина відома .
Як вимкнути це попередження? Чи є налаштування, групова політика, налаштування реєстру? Що-небудь?
Відповіді:
Проблема викликана тим, що перша клітина / поле першого рядка має в ньому точне значення 'ID'. Excel шукає це значення і вирішує, що це формат файлу SYLK (SYmbolic LinK), а не файл CSV.
Цю функцію можна подолати, перейменувавши значення "Id" або "id" - значення, яке шукає Excel, повинно бути великим. Крім того, використовуйте будь-яке інше рядкове значення "Identity" або "Ref" або вставляйте апостроф перед ідентифікатором, щоб сказати Excel трактувати значення як "звичайний текст" - це перетворює чек Excel, але ви, можливо, не хочете апострофа в ваші дані.
Ця функція є в Excel щонайменше з версії 2010 року.
Ми боролися з цим, де я працюю. Одним із способів вирішення проблеми було збереження файлу локально, оскільки в нашому випадку безпека (це проблема безпеки, вірите чи ні) перевірка була запущена лише для мережевих файлів. Поки Excel проводив перевірку, операційна система цього не робила. Не зберігайте у будь-якому офісному форматі, і це може викинути з файлу інформацію про "домен / зону / регіон / будь-що". Я поцікавлюсь, подивіться, чи є ще. Я пам'ятаю, що там було налаштовано групову групу, але нам не дозволяли доторкатися до цього, отже, потворне рішення.
Я також виявив цю погану поведінку Excel. Здається, що: 1 файл CSV (і намагається відкрити в Excel) 2 Перші 2 символи - це ідентифікатор (верхній регістр). Редагування в блокноті дозволить мені відновити дані.
Якщо є кілька стовпців, Excel (версія 2016) відкриє файл із попередженнями про помилки.
Я використовую макрос для конвертації текстових файлів у XLSX, і ця проблема стала шоу-пробкою через спливаючі помилки. Я спробував перетворити на UTF-8, але потім мій розмежувач труби не був розпізнаний. Спробувавши різні речі, я нарешті знайшов дуже просте рішення.
Я сподіваюся, що це допоможе тим із вас, хто витягнув волосся над цим!
Application.DisplayAlerts = False
Workbooks.Open Filename:=folderName & "\" & myfile, Format:=6, Delimiter:="|"
Application.DisplayAlerts = True
Просто додавши заяви DisplayAlerts, він працював прямо через спливаючі вікна і правильно обробляв мій файл.
Аннет