Как заставить excel цитировать все столбцы CSV-файла?
Excel размещает кавычки только вокруг определенных полей, как заставить excel сохранить CSV-файл с кавычками вокруг каждого столбца?
Excel размещает кавычки только вокруг определенных полей, как заставить excel сохранить CSV-файл с кавычками вокруг каждого столбца?
Если вы откроете XLS-файл в LibreOffice или OpenOffice, затем Save As….и выберите Text CSV, это позволит сгенерировать CSV-файл, который также включает в себя кавычки в качестве разделителей. Например: “Smith”, “Pete”, “Canada”, “Jones”, “Mary”, “England”
Просто установите флажок “Цитировать все текстовые ячейки”:
Для того, чтобы также цитировать числовые поля, выделите диапазон ячеек и измените форматирование ячеек на “текстовое” перед сохранением.
На этой странице также есть решение, которое приходит прямо из уст лошади: http://support.microsoft.com/kb/291296/en-us
Если ссылка разваливается, то тема для поиска:
“Процедура экспорта текстового файла с разделителями как запятыми, так и кавычками в Excel” и/или “Q291296”
tl;dr: используйте их макрос.
Я нашел это простое решение:
"''"@"''"
(см. подробности ниже) Строка, которую вы вставляете, "''"@"''"
это двойная кавычка, одиночная кавычка, одиночная кавычка, двойная кавычка, @ символ, двойная кавычка, одиночная кавычка, двойная кавычка.
Отредактировано для Excel 2010 из информации, найденной здесь .
Powershell выглядит так, как будто выглядит правильно, поэтому что-то вроде
ищет powershell.exe на Windows-машине, если вы не знаете powershell.
import-csv C:\Temp\Myfile.csv | export-csv C:\Temp\Myfile_New.csv -NoTypeInformation -Encoding UTF8
Надеюсь, это кому-то поможет.
Выделите ячейки, в которые нужно добавить кавычки. Перейдите в Формат -> Ячейки -> Пользовательские Копировать/Вставить в поле Тип: \”@\” Нажмите “Хорошо” Будьте счастливы, что вы не сделали все это вручную.
От: http://www.lenashore.com/2012/04/how-to-add-quotes-to-your-cells-in-excel-automatically/
Для меня это было проще всего: Я импортировал электронную таблицу в Access 2010 и экспортировал ее оттуда в виде разделенного текстового файла. Дал мне кавычки вокруг моих полей. Потребовалось меньше минуты для 42k строк теперь, когда у меня есть шаги вниз.
Я нашёл другую работу, которая не включает VBA Macro, но требует Notepad++ или аналогичный текстовый редактор на основе макросов.
Экспортируйте ваш файл как текст с вкладками, затем откройте экспортированный файл в Notepad++. Замените все экземпляры символа ‘tab’ текстом “,” (т.е. буквально двойная кавычка, запятая, двойная кавычка), а затем используйте другой макрос для префиксации и суффиксации каждой строки текста двойной кавычкой.
Немного халтурить, но я нашел это быстрее, чем получить VBA макрос работает.
"''"@"''"
(см. подробности ниже) ' '
(повторяющиеся одинарные кавычки) на "
(двойные кавычки) ;
Если вы используете Блокнот++ для добавления кавычек в начало каждой строки, просто откройте экспортированный csv-файл, установите курсор на 1-ю строку, 1-ю колонку, затем нажмите меню Правка/Редактор столбцов… , в поле “Текст для вставки”, введите “, тогда начало каждой строки будет иметь кавычки, после чего вы можете использовать регулярное выражение для поиска/замены всех вкладок.
Экспорт строк, разделенных запятыми и цитируемых, можно выполнить только в Excel 2016 и Блокноте, используя копию данных, формулу, экспорт, изменение свойств файла, замену в Блокноте, сохранение экспортированного файла и очистку. Каждый из них представляет собой простой шаг. Подробнее:
Скопируйте столбцы для экспорта в новый промежуточный лист для сохранения оригинала и в качестве резервной копии, с новым листом, который будет удален позже, чтобы оставить электронную таблицу в том виде, как она была.
В противном случае поместите не встречающиеся символы, скажите ‘#’ или ‘;-)’ на каждом конце строки в столбце, скажите A с формулой =concat("#",trim(A1),"#")
, поместив формулу на все строки другого столбца.
Скопируйте новый столбец(ы) обратно через A…, используя метод ‘123’, чтобы не переносить формулу.
Экспортируйте лист как CSV-файл, чтобы поставить запятые между полями, включая цифры.
Измените свойства file.csv так, чтобы его можно было открыть с помощью Блокнота.
Используйте Блокнот, чтобы заменить произвольный символ(ы) на ‘ “ ”. Хотя было бы разумно использовать “произвольный символ”, его нужно поместить в другую ячейку, скажем “$A$50”, и тогда то, что появляется при экспорте - это “$A$50”“. ” ’, видимо, еще один неудобный триггер.
В блокноте файл должен быть сохранен, став импортированным файлом *.txt, а промежуточный *.csv удален.
С очисткой дополнительных миссий электронных таблиц выполнена.
Возможно, инструменты экспорта Access может быть встроен в Excel в один прекрасный день. Более общий подход среди тех программ, которые используют вырезать и вставить, было бы иметь вставить варианты включают в себя выбор способов интерпретации выходной структуры и предоставить разделители.
Другой способ, если у вас есть доступ к MS (у меня есть ver 2007), импортируйте файл, а затем экспортируйте его как текстовый файл. Затем измените .txt на .csv. Обратите внимание, что все числовые поля не будут иметь вокруг себя двойных кавычек, так что если вам нужны двойные кавычки и вокруг чисел, то, находясь в Access, измените поле с числового на текстовое.
Для пользователей Windows
Обратите внимание, что это не та же самая клавиатурная цитата, которая имеет прямое и обратное разнообразие.
Поэтому, если использовать CSV to LOAD в таблице Mysql, вырезать и вставить в параметр ENCLOSED, иначе вы удивитесь, почему получили сообщение #1083 - Field separator argument is not what is expected
.
Я использовал подход, приведенный ниже, чтобы взять три столбца в Excel и построить строку в четвертом столбце.
=CHAR(34)&A2&CHAR(34)&","&CHAR(34)&B2&CHAR(34)&","&CHAR(34)&C2&CHAR(34)&""
Моя проблема с "''"@"''"
подходом заключается в том, что второй столбец моих данных был номер "''"@"''"
подход ничего не делал с числами. Иногда второй столбец пуст, но мне нужно было убедиться, что он представлен в окончательном текстовом файле.
Это мой рецепт. Ненавижу это делать, но у меня не было лучшего способа. В моем случае, я не получаю цитаты ни по одному полю. Мне также нужно было использовать кодировку UTF-8 и ; вместо табуляции, так что это то, что я закончил.
NOTE: из-за удобства размещения двойных кавычек, заключённых в одинарные кавычки и так далее, я использовал специально “клавиатурное форматирование” для обозначения как нажатий клавиш, так и буквенных символов и строк.
Вот как использовать приложение OpenOffice, чтобы взять таблицу Excel и создать текстовый (csv) файл с кавычками вокруг каждого текстового поля.
Откройте файл Excel с OpenOffice, затем выполните следующие шаги:
Файл > Сохранить как
Предоставить новое имя для файла, который вы собираетесь создать
For Filetype, выберите “Test CSV (. csv)”
включите опцию “Редактировать настройки фильтра”
нажмите “Сохранить”
выберите “Сохранить текущий формат”
Разделитель полей должен быть запятой:
Разделитель текста должен иметь кавычки: “
отметьте "Цитировать все текстовые ячейки”
Нажмите “ОК”
Это сработало!
Я сталкивался с этим вопросом много раз. Вот самое простое решение, которое я придумал.
Access позволит вам указать экспорт разделителя в виде запятой и квалификационных текстовых полей с кавычками. В мастере экспорта вы можете указать любой разделитель или символ вокруг строк.
Вам может понадобиться создать запрос Access, чтобы расположить поля в определенном порядке или скрыть поле автоидентификации, добавленное Access.
Также… после экспорта в CSV, НЕ открывайте его в Excel снова. Если вы хотите посмотреть на результаты, откройте его в блокноте. В Excel есть тенденция к ошибкам с данными csv….. Я думаю, что это были поля, заполненные ведущими нулями, если я правильно помню.