Преобразование формулы байпаса excel csv в поля, начинающиеся с + или -
У меня есть файл csv с содержимым:
"x","y","-z"
Когда я импортирую его, я получаю:
![alt text]()
Как я могу обойти это преобразование?
Обновление
Если вы попытаетесь:
"x","y",="-z,a"
", a" не импортируется.
Если вы поместили пространство впереди:
"x","y",=" -z"
или
"x","y"," -z"
он отлично работает
Ответы
Ответ 1
Ваша проблема заключается в том, что с помощью расширения CSV вы вынуждаете excel интерпретировать файл, используя его очень строгие соглашения CSV, и это часто будет противоречить тому, что вы пытаетесь сделать, если CSV файл не был изначально создан по Excel. Самый простой и самый надежный способ импорта этого CSV файла - переименовать его в TXT файл, а затем использовать функцию импорта в excel для принудительного выравнивания столбцов именно так, как вы хотите.
Ответ 2
Префикс значений с помощью знаков равенства
="x",="y",="-z"
Ответ 3
Я попробовал свой первый пример в Excel 2003 и смог воспроизвести ваш #NAME-eror.
Мое решение состояло в том, чтобы открыть текстовый файл и указать третий столбец как "Текст" в мастере импорта (3-я страница) - наряду с выбором правильного разделителя и текста (2-я страница).
Изменения в текстовом файле не требуются.
Ответ 4
Существует полная разница в использовании Excel > Импорт и двойной щелчок на файле .CSV. Используются разные парсеры.
Основываясь на вышеприведенных комментариях, я понял, что добавляет пробел, прежде чем знак "+" или "-" будет работать для файла с двойным щелчком .CSV. Таким образом, мой файл содержит, например,
" +14";" -Foo"
Ответ 5
Я бы предпочел решить эту проблему непосредственно во время преобразования, указав правильный формат столбца, например: использовать текстовый формат для столбца, который должен содержать знак операции:
![Текстовый формат в столбце]()
Отметьте это сообщение: http://ask.osify.com/qa/854
Ответ 6
Найти и заменить каждый экземпляр
+
с
' +
Единая кавычка и пробел в начале должны отменять любые +
, -
или =
.
Ответ 7
Вам также понадобится преобразовать 1,5 числа в 1,5 строки, поэтому они не будут изменены до значений типа даты.
Для + - = я использую метод пространства "+...." - не очень, но для моей задачи было достаточно.