Время на прочтение
11 мин
Количество просмотров 366K
CSV является стандартом де-факто для связи между собой разнородных систем, для передачи и обработки объемных данных с «жесткой», табличной структурой. Во многих скриптовых языках программирования есть встроенные средства разбора и генерации, он хорошо понятен как программистам, так и рядовым пользователям, а проблемы с самими данными в нем хорошо обнаруживаются, как говорится, на глаз.
История этого формата насчитывает не менее 30 лет. Но даже сейчас, в эпоху повального использования XML, для выгрузки и загрузки больших объемов данных по-прежнему используют CSV. И, несмотря на то, что сам формат довольно неплохо описан в RFC, каждый его понимает по-своему.
В этой статье я попробую обобщить существующие знания об этом формате, указать на типичные ошибки, а также проиллюстрировать описанные проблемы на примере кривой реализации импорта-экспорта в Microsoft Office 2007. Также покажу, как обходить эти проблемы (в т.ч. автоматическое преобразование типов Excel-ом в DATETIME и NUMBER) при открытии .csv.
Начнем с того, что форматом CSV на самом деле называют три разных текстовых формата, отличающихся символами-разделителями: собственно сам CSV (comma-separated values — значения, разделенные запятыми), TSV (tab-separated values — значения, разделенные табуляциями) и SCSV (semicolon separated values — значения, разделенные точкой с запятой). В жизни все три могут называться одним CSV, символ-разделитель в лучшем случае выбирается при экспорте или импорте, а чаще его просто «зашивают» внутрь кода. Это создает массу проблем в попытке разобраться.
Как иллюстрацию возьмем казалось бы тривиальную задачу: импортировать в Microsoft Outlook данные из таблицы в Microsoft Excel.
В Microsoft Excel есть средства экспорта в CSV, а в Microsoft Outlook — соответствующие средства импорта. Что могло быть проще — сделал файлик, «скормил» почтовой программе и — дело сделано? Как бы не так.
Создадим в Excel тестовую табличку:
… и попробуем экспортировать ее в три текстовых формата:
«Текст Unicode» | Кодировка — UTF-16, разделители — табуляция, переводы строк — 0×0D, 0×0A, объем файла — 222 байт |
«CSV (разделители — запятые)» | Кодировка — Windows-1251, разделители — точка с запятой (не запятая!), во второй строке значение телефонов не взято в кавычки, несмотря на запятую, зато взято в кавычки значение «01;02», что правильно. Переводы строк — 0×0D, 0×0A. Объем файла — 110 байт |
«Текстовые файлы (с разделителями табуляции)» | Кодировка — Windows-1251, разделители — табуляция, переводы строк — 0×0D, 0×0A. Значение «01;02» помещено в кавычки (без особой нужды). Объем файла — 110 байт |
Какой вывод мы делаем из этого?.. То, что здесь Microsoft называет «CSV (разделители — запятые)», на самом деле является форматом с разделителями «точка с запятой». Формат у Microsoft — строго Windows-1251. Поэтому, если у вас в Excel есть Unicode-символы, они на выходе в CSV отобразятся в вопросительные знаки. Также то, что переводами строк является всегда пара символов, то, что Microsoft тупо берет в кавычки все, где видит точку с запятой. Также то, что если у вас нет Unicode-символов вообще, то можно сэкономить на объеме файла. Также то, что Unicode поддерживается только UTF-16, а не UTF-8, что было бы сильно логичнее.
Теперь посмотрим, как на это смотрит Outlook. Попробуем импортировать эти файлы из него, указав такие же источники данных. Outlook 2007: Файл -> Импорт и экспорт… -> Импорт из другой программы или файла. Далее выбираем формат данных: «Значения, разделенные запятыми (Windows)» и «Значения, разделенные табуляцией (Windows)».
«Значения, разделенные табуляцией(Windows)» | Скармливаем аутлуку файл tsv, с разделенными табуляцией значениями и!.. — чтобы вы думали?.. Outlook склеивает поля и табуляцию не замечает. Заменяем в файле табуляцию на запятые и, как видим, поля уже разбирает, молодец. |
«Значения, разделенные запятыми (Windows)» | А вот аутлук как раз понимает все верно. Comma — это запятая. Поэтому ожидает в качестве разделителя запятую. А у нас после экселя — точка с запятой. В итоге аутлук распознает все неверно. |
Два майкрософтовских продукта не понимают друг друга, у них напрочь отсутствует возможность передать через текстовый файл структурированные данные. Для того, чтобы все заработало, требуются «пляски с бубном» программиста.
Мы помним, что Microsoft Excel умеет работать с текстовыми файлами, импортировать данные из CSV, но в версии 2007 он делает это очень странно. Например, если просто открыть файл через меню, то он откроется без какого-либо распознавания формата, просто как текстовый файл, целиком помещенный в первую колонку. В случае, если сделать дабл-клик на CSV, Excel получает другую команду и импортирует CSV как надо, не задавая лишних вопросов. Третий вариант — вставка файла на текущий лист. В этом интерфейсе можно настраивать разделители, сразу же смотреть, что получилось. Но одно но: работает это плохо. Например, Excel при этом не понимает закавыченных переводов строк внутри полей.
Более того, одна и та же функция сохранения в CSV, вызванная через интерфейс и через макрос, работает по-разному. Вариант с макросом не смотрит в региональные настройки вообще.
Стандарта CSV как такового, к сожалению, нет, но, между тем, существует т.н. memo. Это RFC 4180
2005-го
года, в котором описано все довольно толково. За неимением ничего большего, правильно придерживаться хотя бы RFC. Но для совместимости с Excel следует учесть его собенности.
Вот краткая выжимка рекомендаций RFC 4180 и мои комментарии в квадратных скобках:
- между строками — перевод строки CRLF [на мой взгляд, им не стоило ограничивать двумя байтами, т.е. как CRLF (0×0D, 0×0A), так и CR 0×0D]
- разделители — запятые, в конце строки не должно быть запятой,
- в последней строке CRLF не обязателен,
- первая строка может быть строкой заголовка (никак не помечается при этом)
- пробелы, окружающие запятую-разделитель, игнорируются.
- если значение содержит в себе CRLF, CR, LF (символы-разделители строк), двойную кавычку или запятую (символ-разделитель полей), то заключение значения в кавычки обязательно. В противном случае — допустимо.
- т.е. допустимы переводы строк внутри поля. Но такие значения полей должны быть обязательно закавычены,
- если внутри закавыченной части встречаются двойные кавычки, то используется специфический квотинг кавычек в CSV — их дублирование.
Вот в нотации ABNF описание формата:
file = [header CRLF] record *(CRLF record) [CRLF] header = name *(COMMA name) record = field *(COMMA field) name = field field = (escaped / non-escaped) escaped = DQUOTE *(TEXTDATA / COMMA / CR / LF / 2DQUOTE) DQUOTE non-escaped = *TEXTDATA COMMA = %x2C DQUOTE = %x22 LF = %x0A CRLF = CR LF TEXTDATA = %x20-21 / %x23-2B / %x2D-7E
Также при реализации формата нужно помнить, что поскольку здесь нет указателей на число и тип колонок, поскольку нет требования обязательно размещать заголовок, здесь есть условности, о которых необходимо не забывать:
- строковое значение из цифр, не заключенное в кавычки может быть воспринято программой как числовое, из-за чего может быть потеряна информация, например, лидирующие нули,
- количество значений в каждой строке может отличаться и необходимо правильно обрабатывать эту ситуацию. В одних ситуациях нужно предупредить пользователя, в других — создавать дополнительные колонки и заполнять их пустыми значениями. Можно определиться, что количество колонок задается заголовком, а можно добавлять их динамически, по мере импорта CSV,
- Квотить кавычки через «слэш» не по стандарту, делать так не надо.
- Поскольку типизации полей нет, нет и требования к ним. Разделители целой и дробной частей в разных странах разные, и это приводит к тому, что один и тот же CSV, сгенрированный приложением, в одном экселе «понимается», в другом — нет. Потому что Microsoft Office ориентируется на региональные настройки Windows, а там может быть что угодно. В России там указано, что разделитель — запятая,
- Если CSV открывать не через меню «Данные», а напрямую, то Excel лишних вопросов не задает, и делает как ему кажется правильным. Например, поле со значением 1.24 он понимает по умолчанию как «24 января»
- Эксель убивает ведующие нули и приводит типы даже тогда, когда значение указано в кавычках. Делать так не надо, это ошибка. Но чтобы обойти эту проблему экселя, можно сделать небольшой «хак» — значение начать со знака «равно», после чего поставить в кавычках то, что необходимо передать без изменения формата.
- У экселя есть спецсимвол «равно», который в CSV рассматривается как идентификатор формулы. То есть, если в CSV встретится =2+3, он сложит два и три и результат впишет в ячейку. По стандарту он это делать не должен.
Пример валидного CSV, который можно использовать для тестов:
Фамилия, Имя, Адрес, Город/штат, индекс, просто строка Иванов,Иван, Ленина 20, Москва, 08075, "1/3" Tyler, John,110 terrace, PA,20121, "1.24" "Петров ""Кул""", Петя,120 Hambling St., NJ,08075, "1,24" Смирнов,Вася,"7452 Street ""Near the Square"" road", York, 91234, "3-01" ,Миша,,Ленинград, 00123, "03-01" "Джон ""Черная голова"", Клод",Рок,"", Маями бич,00111, "0000" Сергей,,
точно такой же SCSV:
Фамилия; Имя; Адрес; Город/штат; индекс; просто строка Иванов;Иван; Ленина 20; Москва; 08075;"1/3" Tyler; John;110 terrace; PA; 20121;"1.24" "Петров ""Кул"""; Петя;120 Hambling St.; NJ;08075;"1,24" Смирнов;Вася;"7452 Street ""Near the Square"" road"; York; 91234;"3-01" ;Миша;;Ленинград; 00123;"03-01" "Джон ""Черная голова""; Клод";Рок;""; Маями бич;00111; "0000" Сергей;;
Первый файлик, который реально COMMA-SEPARATED, будучи сохраненным в .csv, Excel-ом не воспринимается вообще.
Второй файлик, который по логике SCSV, экселом воспринимается и выходит вот что:
Ошибки Excel-я при импорте:
- Учлись пробелы, окружающие разделители
- Последний столбец вообще толком не распознался, несмотря на то, что данные в кавычках. Исключение составляет строка с «Петровым» — там корректно распозналось 1,24.
- В поле индекс Excel «опустил» ведущие нули.
- в самом правом поле последней строки пробелы перед кавычками перестали указывать на спецсимвол
Если же воспользоваться функционалом импорта (Данные -> Из файла) и обозвать при импорте все поля текстовыми, то будет следующая картина:
С приведением типов сработало, но зато теперь не обрабатываются нормально переводы строк и осталась проблема с ведущими нулями, кавычками и лишними пробелами. Да и пользователям так открывать CSV крайне неудобно.
Есть эффективный способ, как заставить Excel не приводить типы, когда это нам не нужно. Но это будет CSV «специально для Excel». Делается это помещением знака «=» перед кавычками везде, где потенциально может возникнуть проблема с типами. Заодно убираем лишние пробелы.
Фамилия;Имя;Адрес;Город/штат;индекс;просто строка Иванов;Иван;Ленина 20;Москва;="08075";="1/3" Tyler; John;110 terrace;PA;="20121";="1.24" "Петров ""Кул""";Петя;120 Hambling St.;NJ;="08075";="1,24" Смирнов;Вася;"7452 Street ""Near the Square"" road";York;="91234";="3-01" ;Миша;;Ленинград;="00123";="03-01" "Джон ""Черная голова"";Клод";Рок;"";Маями бич;="00111";="0000" Сергей;;
И вот что случаеся, если мы открываем этот файлик в экселе:
Резюмирую.
Чтобы сгенерировать такой CSV, которым можно было бы пользоваться, пользователю нужно дать возможность сделать следующие настройки перед экспортом:
- выбрать кодировку. Как правило, важно UTF-8, UTF-16, Windows-1251, KOI8-R. Чаще всего, других вариантов нет. Одна из них должна идти по умолчанию. В случае, если данные содержат символы, не имеющие аналогов в целевой кодировке, нужно предупреждать пользователя, что данные будут битые;
- выбрать разделитель между полями. Варианты — табуляция, запятая, точка с запятой. По умолчанию — точка с запятой. Не забыть, что если разделитель вводится в тексте, то будет очень непросто ввести туда табуляцию, это еще и непечатный символ;
- выбрать разделитель между строками (CRLF 0×0D 0×0A или CR 0×0D);
- выбрать разделитель целой и дробной части для числовых данных (точка или запятая).
- выбрать, выводить ли строку заголовка;
- выбрать, каким образом осуществлять квотинг спецсимволов (особенно переводов строк и кавычек). В принципе, можно отступиться от стандарта и квотировать их как n и «, но нужно в этом случае не забыть квотировать сами n, если они встретятся и не забыть сделать это опцией при экспорте-импорте. Но совместимость пойдет лесом, потому что любой RFC-стандартный парсер конструкцию …,»abc«»,… посчитает за ошибку;
- совсем в идеале — поставить галочку «для Excel» и учитывать там те нестандартности, которые внесла Майкрософт. К примеру, заменять значения числовых полей, «похожих на дату», на конструкцию =»<значение поля>«.
- определиться, нужно ли оставлять «хвост» из пустых разделителей, если он образуется. Например, из 20 полей только первое содержит данные, а остальные пустые. В итоге, в строке можно либо ставить после первого 19 разделителей, либо не ставить. Для больших объемов данных это может спасти миллисекунды обработки и уменьшить размер файла.
Чтобы построить хороший и удобный импортер CSV, необходимо помнить о следующем:
- разбор файла нужно делать по лексемам в соответствии с грамматикой выше или пользоваться хорошо зарекомендовавшими себя готовыми библиотеками (Excel работает иначе, потому с импортом проблема);
- предоставлять пользователю возможность выбрать кодировку (топ 4 достаточно);
- предоставлять пользователю возможность выбрать разделитель между полями (запятая, табуляция, точка с запятой достаточно);
- предоставлять пользователю возможность выбрать разделитель между строками, но кроме вариантов CR и CRLF нужно предусмотреть «CR или CRLF». Это связано с тем, что, например, Excel при экспорте таблицы с переводами строк внутри ячеек экспортирует эти переводы строк как CR, а остальные строки разделяет CRLF. При этом при импорте файла ему все равно, CR там или CRLF;
- предоставлять пользователю возможность выбрать разделитель между целой и дробной частей (запятая или точка);
- определиться с методом разбора — сначала читаем все в память, потом обрабатываем или обрабатываем строку за строкой. В первом случае может понадобиться больше памяти, во втором случае — ошибка в середине вызовет только частичный импорт, что может вызвать проблемы. Предпочительнее первый вариант.
Рауф Алиев,
заместитель технического директора Mail.Ru Group
В этой статье Вы найдёте 2 простых способа преобразовать файл CSV в Excel. Кроме того, Вы узнаете, как импортировать в Excel несколько файлов CSV и как справиться с ситуациями, когда часть данных из файла CSV не отображается корректно на листе Excel.
Недавно мы начали изучать особенности формата CSV (Comma-Separated Values – значения, разделённые запятой) и различные способы преобразования файла Excel в CSV. Сегодня мы займёмся обратным процессом – импортом CSV в Excel.
Эта статья покажет Вам, как открывать CSV в Excel и как импортировать одновременно несколько файлов CSV. Мы также обозначим возможные подводные камни и предложим наиболее эффективные решения.
- Как преобразовать CSV в Excel
- Преобразование CSV в Excel: проблемы и решения
Содержание
- Как преобразовать CSV в Excel
- Как открыть файл CSV в Excel
- Как открыть файл CSV при помощи Проводника Windows
- Как импортировать CSV в Excel
- Преобразование CSV в Excel: проблемы и решения
- Файл CSV отображается в Excel неправильно
- Первые нули теряются при открытии файла CSV в Excel
- Excel преобразует некоторые значения в даты при открытии файла CSV
- Как импортировать в Excel несколько файлов CSV
Как преобразовать CSV в Excel
Если Вам нужно вытащить какую-то информацию на лист Excel из базы данных Вашей компании, то первая же идея, что приходит на ум, – экспортировать базу данных в файл CSV, а затем импортировать файл CSV в Excel.
Существует 3 способа преобразования CSV в Excel: Вы можете открыть файл с расширением .csv непосредственно в Excel, дважды кликнуть по файлу в Проводнике Windows либо импортировать CSV в Excel, как внешний источник данных. Далее я подробно расскажу об этих трёх способах и укажу преимущества и недостатки каждого из них.
- Способ 1: Открываем файл CSV в Excel
- Способ 2: Открываем файл CSV в Excel при помощи Проводника Windows
- Способ 3: Импортируем CSV в Excel
Как открыть файл CSV в Excel
Даже если файл CSV создан в другой программе, Вы всегда можете открыть его как книгу Excel при помощи команды Open (Открыть).
Замечание: Открытие файла CSV в Excel не изменяет формат файла. Другими словами, файл CSV при этом не будет преобразован в файл Excel (формат .xls или .xlsx), он сохранит свой изначальный тип (.csv или .txt).
- Запустите Microsoft Excel, на вкладке Home (Главная) нажмите Open (Открыть).
- Появится диалоговое окно Open (Открытие документа), в выпадающем списке в нижнем правом углу выберите Text Files (Текстовые файлы).
- Найдите в Проводнике Windows файл CSV и откройте его, дважды кликнув по нему.
Если Вы открываете файл CSV, то Excel откроет его сразу же вставив данные в новую книгу Excel. Если Вы открываете текстовый файл (.txt), то Excel запустит Мастер импорта текстов. Подробнее об этом читайте в разделе Импортируем CSV в Excel.
Замечание: Когда Microsoft Excel открывает файл CSV, то для того, чтобы понять, как именно импортировать каждый столбец данных, он использует настройки форматирования, заданные по умолчанию.
Если данные соответствуют хотя бы одному из следующих пунктов, то воспользуйтесь Мастером импорта текстов:
- В файле CSV использованы различные разделители;
- В файле CSV использованы различные форматы даты;
- Вы преобразуете данные, среди которых есть числа с нулём в начале, и Вы хотите сохранить этот ноль;
- Вы хотите предварительно просмотреть, как будут импортированы данные из файла CSV в Excel;
- Вам хочется большей гибкости в работе.
Чтобы заставить Excel запустить Мастер импорта текстов, Вы можете либо изменить расширение фала с .csv на .txt (прежде чем открывать файл), либо импортировать CSV в Excel так, как это будет описано далее.
Как открыть файл CSV при помощи Проводника Windows
Это самый быстрый способ открыть CSV в Excel. В Проводнике Windows дважды кликните по файлу .csv, и он откроется как новая книга Excel.
Однако, этот способ сработает только в том случае, если приложение Microsoft Excel установлено как программа, заданная по умолчанию, для открытия файлов .csv. Если это так, то Вы будете видеть знакомую иконку в Проводнике Windows рядом с именем файла.
Если Excel не является программой по умолчанию, вот как Вы можете это исправить:
- Кликните правой кнопкой мыши по любому файлу .csv в Проводнике Windows и в открывшемся контекстном меню нажмите Open with (Открыть с помощью) > Choose default program (Выбрать программу).
- Выберите Excel в списке рекомендованных программ, убедитесь, что стоит галочка для параметра Always use the selected program to open this kind of file (Всегда использовать выбранное приложение для такого типа файлов) и нажмите ОК.
Как импортировать CSV в Excel
Этим способом Вы можете импортировать данные из файла .csv в существующий или в новый лист Excel. В отличие от предыдущих двух способов, он не просто открывает CSV в Excel, а именно конвертирует формат .csv в .xlsx (если Вы используете Excel 2007, 2010 или 2013) или .xls (в версиях Excel 2003 и более ранних).
- Откройте нужный лист Excel и кликните по ячейке, куда нужно импортировать данные из файла .csv или .txt.
- На вкладке Data (Данные) в разделе Get External Data (Получение внешних данных) кликните From Text (Из текста).
- Найдите файл .csv, который требуется импортировать, выберите его и нажмите кнопку Import (Импорт), или просто дважды кликните по нужному CSV файлу.
- Откроется Мастер импорта текстов, Вам нужно просто выполнить его шаги.
Прежде, чем мы двинемся дальше, пожалуйста, посмотрите на снимок экрана ниже, на нем показан исходный файл CSV и желаемый результат в Excel. Надеюсь, это поможет Вам лучше понять, почему мы выбираем те или иные параметры настроек в последующем примере.
-
- Шаг 1. Выберите формат данных и номер строки, с которой нужно начинать импорт. Чаще всего выбирают Delimited (С разделителями) и со строки 1. Область предварительного просмотра в нижней части диалогового окна мастера показывает первые несколько записей импортируемого файла CSV.
- Шаг 2. На этом шаге нужно выбрать разделители и ограничитель строк. Delimiter (Разделитель) – это символ, который разделяет значения в файле CSV. Если в Вашем файле CSV использован какой-то символ, которого нет в предложенном списке, то поставьте галочку в варианте Other (Другой) и введите нужный символ. В нашем примере мы указали Tab (Знак табуляции) и Comma (Запятая), чтобы каждый товар (они разделены табуляцией) начинался с новой строки, а информация о товаре, например, ID и данные о продажах (они разделены запятыми), были помещены в разные ячейки.Text qualifier (Ограничитель строк) – это символ, в который заключены отдельные значения. Весь текст, заключённый между такими символами, например, «текст1, текст2», будет импортирован как одно значение, даже если в этом тексте содержится символ, указанный Вами как разделитель.В этом примере мы указали запятую как разделитель, и кавычки как ограничитель строк. В результате, все числа с разделителем десятичных разрядов (которым тоже в нашем случае служит запятая!) будут импортированы в одну ячейку, как это видно в области предпросмотра на рисунке ниже. Если мы не укажем кавычки как ограничитель строк, то все числа будут импортированы в разные ячейки.
- Шаг 3. Посмотрите в область Data preview (Образец разбора данных). Если Вы довольны тем, как выглядят Ваши данные, тогда жмите кнопку Finish (Готово).
Совет: Если в Вашем файле CSV используется последовательно более одной запятой или другого символа-разделителя, то поставьте галочку для параметра Treat consecutive delimiters as one (Считать последовательные разделители одним), чтобы избежать появления пустых ячеек.
- Выберите, куда вставлять импортированные данные, на существующий или на новый лист, и нажмите ОК, чтобы завершить импорт файла CSV в Excel.
Совет: Вы можете нажать кнопку Properties (Свойства), чтобы настроить дополнительные параметры, такие как обновление, разметка и форматирование для импортированных данных.
Замечание: Если Ваш файл CSV содержит численные данные или даты, Excel может преобразовать их с ошибками. Чтобы изменить формат импортированных данных, выберите столбец (столбцы), в которых возникли ошибки, кликните по ним правой кнопкой мыши и в контекстном меню выберите Format cells (Формат ячеек).
Преобразование CSV в Excel: проблемы и решения
Формат CSV используется уже более 30 лет, но несмотря на его длительную историю, он никогда не был официально задокументирован. Название CSV (Comma-Separated Values) возникло из-за использования запятых для разделения полей данных. Но это в теории. На самом деле, множество так называемых CSV-файлов используют другие символы для разделения данных, например:
- Табуляция – TSV-файлы (tab-separated values)
- Точка с запятой – SCSV-файлы (semicolon separated values)
Некоторые вариации файлов CSV разделяют поля данных одинарными или двойными кавычками, другие требуют маркер последовательности байтов из Юникода (BOM), например, UTF-8, для корректной интерпретации Юникода.
Это отсутствие стандартов порождает разнообразные проблемы, с которыми Вы можете столкнуться, пытаясь преобразовать файл Excel в CSV, и особенно, когда импортируете файл CSV в Excel. Давайте разберёмся с известными проблемами, начиная с самой распространённой.
- Файл CSV отображается в Excel неправильно (все данные помещены в первый столбец)
- Первые нули потеряны при открытии файла CSV в Excel
- Значения преобразованы в даты при импорте файла CSV в Excel
Файл CSV отображается в Excel неправильно
Признаки: Вы пытаетесь открыть файл CSV в Excel, и все данные попадают в первый столбец.
Причина: Корень проблемы кроется в том, что в Ваших региональных и языковых настройках Windows и в Вашем файле CSV установлены различные разделители. В Северной Америке и некоторых других странах разделителем полей списка по умолчанию является запятая. В то время как в Европейских странах запятая используется как разделитель десятичных разрядов, а разделителем полей списка является точка с запятой.
Решение: Есть несколько возможных решений этой проблемы. Вы можете быстро просмотреть приведённые ниже рекомендации и выбрать наиболее подходящие для конкретно Вашей задачи.
- Укажите правильный разделитель непосредственно в файле CSV. Откройте файл CSV в любом текстовом редакторе (подойдёт даже обычный блокнот) и в первой строке вставьте следующий текст. Обратите внимание, что это должна быть отдельная строка перед любыми другими данными:
- Чтобы установить разделитель запятую: sep=,
- Чтобы установить разделитель точку с запятой: sep=;
Как Вы уже догадались, таким образом можно установить в качестве разделителя любой другой символ, просто указав его сразу после знака равенства.
- Выберите нужный разделитель в Excel. В Excel 2013 или 2010 на вкладке Data (Данные) в разделе Data Tools (Работа с данными) нажмите Text To Columns (Текст по столбцам).Когда запустится Мастер распределения текста по столбцам, на первом шаге выберите формат данных Delimited (С разделителями) и нажмите Next (Далее). На втором шаге выберите нужный разделитель и нажмите Finish (Готово).
- Измените расширение с .csv на .txt. Открытие файла .txt в Excel приведёт к запуску Мастера импорта текстов, и Вы сможете выбрать нужный разделитель, как это было описано в разделе Как импортировать CSV в Excel.
- Откройте файл CSV с точкой с запятой в качестве разделителя при помощи VBA. Вот пример кода VBA, который открывает в Excel файл CSV, где в качестве разделителя используется точка с запятой. Код был написан несколько лет назад для более ранних версий Excel (2000 и 2003), но если Вы достаточно хорошо знакомы с VBA, то у Вас не должно возникнуть проблем с его обновлением или изменением для работы с файлами CSV с запятой в качестве разделителя.
Замечание: Все показанные решения изменяют разделитель только для данного файла CSV. Если Вы хотите раз и навсегда изменить разделитель, заданный по умолчанию, то Вам подойдёт следующее решение.
- Изменяем разделители в настройках региональных стандартов. Нажмите кнопку Start (Пуск) и запустите Control Panel (Панель управления), кликните пункт Region and Language (Региональные стандарты) > Additional Settings (Дополнительные параметры). Откроется диалоговое окно Customize Format (Настройка формата), в котором Вам нужно выбрать точку (.) для параметра Decimal symbol (Разделитель целой и дробной части), и установить запятую (,) для параметра List separator (Разделитель элементов списка).
Примечание переводчика: Данные настройки приведены для английской локализации Excel (и ряда других стран). Для русской локализации привычнее будет использовать запятую в качестве разделителя целой и дробной части и точку с запятой для разделения элементов списка.
- Дважды нажмите ОК, чтобы закрыть диалоговые окна – всё готово! С этого момента Microsoft Excel будет открывать и отображать все файлы CSV (с разделителем запятой) корректно.
Замечание: Установка в Панели управления Windows символов-разделителей целой и дробной части и элементов списка изменит настройки символов, заданные по умолчанию, для всех программ на Вашем компьютере, а не только в Microsoft Excel.
Первые нули теряются при открытии файла CSV в Excel
Признаки: Ваш файл CSV содержит значения с первыми нулями, и эти нули теряются при открытии файла CSV в Excel.
Причина: По умолчанию, Microsoft Excel отображает файл CSV в формате General (Общий), в котором первые нули отсекаются.
Решение: Вместо того, чтобы открывать файл .csv в Excel, запустите, как мы это делали ранее, Мастер импорта текстов, чтобы конвертировать файл CSV в Excel.
На шаге 3 мастера выберите столбцы, содержащие значения с первыми нулями и измените формат этих столбцов на текстовый. Так Вы конвертируете Ваш файл CSV в Excel, сохранив нули на своих местах.
Excel преобразует некоторые значения в даты при открытии файла CSV
Признаки: Некоторые значения в Вашем файле CSV похожи на даты, и Excel автоматически преобразует такие значения из текстового формата в формат даты.
Причина: Как упоминалось выше, Excel открывает файл CSV в формате General (Общий), при этом значения, похожие на даты, преобразует из текстового формата в формат даты. Например, если Вы открываете файл CSV, содержащий логины пользователей, то запись «апр23» будет преобразована в дату.
Решение: Преобразуйте файл CSV в Excel при помощи Мастера импорта текстов. На шаге 3 мастера выберите столбцы с записями, похожими на даты, и измените формат столбца на текстовый.
Если Вам нужно достичь противоположного результата, то есть в определённом столбце преобразовать значения в даты, тогда установите формат Date (Дата) и выберите подходящий формат даты в выпадающем списке.
Как импортировать в Excel несколько файлов CSV
Думаю, Вы знаете, что Microsoft Excel позволяет открывать несколько файлов CSV при помощи команды Open (Открыть).
- На вкладке File (Файл) нажмите Open (Открыть) и в выпадающем списке в нижней правой части диалогового окна выберите Text Files (Текстовые файлы).
- Чтобы выделить несколько файлов подряд, кликните по первому файлу, затем нажав и удерживая клавишу Shift, кликните по крайнему файл. Оба эти файла, а также все, что находятся между ними, будут выделены.Чтобы выделить файлы, расположенные не подряд, удерживайте клавишу Ctrl и щелкайте по каждому файлу .csv, который хотите открыть.
- Когда выделены все нужные файлы CSV, нажмите кнопку Open (Открыть).
Этот способ простой и быстрый, и мы могли бы назвать его отличным, если бы не одно обстоятельство – каждый файл CSV открывается таким образом как отдельная книга Excel. На практике переключение туда-сюда между несколькими открытыми файлами Excel может быть крайне неудобным и обременительным.
Надеюсь, теперь Вы легко сможете преобразовать любой файл CSV в Excel. Если у Вас возникают какие-либо вопросы или сложности, смело пишите мне в комментариях. И благодарю за терпение каждого, кто осилил чтение этой длинной статьи до самого конца! 🙂
Оцените качество статьи. Нам важно ваше мнение:
CSV – популярное расширение файлов, которые используются, в основном, для обмена данными между различными компьютерными программами. Чаще всего необходимости в открытии и редактировании таких документов нет. Однако в некоторых случаях перед пользователями может встать такая задача. Программа Excel позволяет это сделать, но в отличие от стандартных файлов в формате XLS и XLSX, простое открытие документа двойным щелчком мыши не всегда дает качественный результат, что может выражаться в некорректном отображении информации. Давайте посмотрим, каким образом можно открыть файлы с расширением CSV в Экселе.
-
Открываем CSV-файлы
- Метод 1: двойным щелчком или через контекстное меню
- Метод 2: применяем Мастер текстов
- Метод 3: через меню “Файл”
- Заключение
Для начала давайте разберемся, что из себя представляют документы в данном формате.
CSV – аббревиатура, которая расшифровывается как “Comma-Separated Values” (на русском языке означает “значения, разделенные запятыми”).
Как следует из названия, в таких документах используются разделители:
- запятая – в англоязычных версиях;
- точка с запятой – в русскоязычных версиях программы.
Во время открытия документа в Excel основная задача (проблема) заключается в выборе способа кодировки, примененного при сохранении файла. Если будет выбрана не та кодировка, скорее всего, пользователь увидит множество нечитаемых символов, и полезность информации будет сведена к минимуму. Помимо этого, ключевое значение имеет используемый разделитель. Например, если документ был сохранен в англоязычной версии, а затем его пытаются открыть в русскоязычной, скорее всего, качество отображаемой информации пострадает. Причина, как мы ранее отметили, заключается в том, что в разных версиях используются разные разделители. Давайте посмотрим, как избежать этих проблем и как правильно открывать файлы CSV.
Прежде, чем приступить к более сложным методам, давайте рассмотрим самый простой. Он применим только в тех случаях, когда файл был создан/сохранен и открывается в одной и той же версии программы, а значит, проблем с кодировкой и разделителями быть не должно. Здесь возможно два варианта, опишем их ниже.
Excel установлена как программа по умолчанию для открытия CSV-файлов
Если это так, открыть документ можно как и любой другой файл – достаточно просто дважды щелкнуть по нему.
Для открытия CSV-фалов назначена другая программа или не назначена вовсе
Алгоритм действия в таких ситуациях следующий (на примере Windows 10):
- Щелкаем правой кнопкой мыши по файлу и в открывшемся контекстном меню останавливаемся на команде “Открыть с помощью”.
- Во вспомогательном меню система может сразу предложить программу Excel. В этом случае кликаем по ней, в результате чего файл откроется (как и при двойном щелчке по нему). Если нужной нам программы нет в списке, кликаем по пункту “Выбрать другое приложение”.
- Появится окно, в котором мы можем выбрать программу (чтобы раскрыть весь список доступных вариантов, требуется нажать кнопку “Еще приложения”), с помощью которой требуется открыть документ. Ищем то, что нам нужно и жмем OK. Чтобы назначить Excel приложением по умолчанию для данного типа файлов, предварительно ставим соответствующую галочку.
- В некоторых случаях, когда и в этом окошке не удается найти Эксель, щелкаем по кнопке “Найти другое приложение на этом компьютере” в конце списка.
- На экране отобразится окно, в котором мы переходим к расположению программы на ПК, отмечаем исполняемый файл с расширением EXE и жмем кнопку “Открыть”.
Независимо от того, какой из описанных выше способов был выбран, результатом будет открытие CSV-файла. Как мы упомянули выше, корректно отображаться содержимое будет только при соответствии кодировки и разделителей.
В остальных случаях может показываться нечто подобное:
Поэтому описанный метод подходит не всегда, и мы переходим к следующим.
Метод 2: применяем Мастер текстов
Воспользуемся интегрированным в программу инструментом – Мастером текстов:
- Открыв программу и создав новый лист, чтобы получить доступ ко всем функциям и инструментам рабочей среды, переключаемся во вкладку “Данные”, где щелкаем по кнопке “Получение внешних данных”. Среди раскрывшихся вариантов выбираем “Из текста”.
- Откроется окно, в котором нам нужно перейти к расположению файла, который требуется импортировать. Отметив его жмем кнопку “Импорт”.
- Появится Мастер текстов. Проверяем, чтобы была выбрана опция “с разделителями” для параметра “Формат данных”. Выбор формата зависит от кодировки, которая была использована при его сохранении. Среди самых популярных форматов можно отметить “Кириллицу (DOS)” и “Юникод (UTF-8)”. Понять, что сделан правильный выбор можно, ориентируясь на предварительный просмотр содержимого в нижней части окна. В нашем случае подходит “Юникод (UTF-8)”. Остальные параметры чаще всего не требует настройки, поэтому жмем копку “Далее”.
- Следующим шагом определяемся с символом, который служит в качестве разделителя. Так как наш документ был создан/сохранен в русскоязычной версии программы, выбираем “точку с запятой”. Здесь у нас, как и в случае с выбором кодировки, есть возможность попробовать различные варианты, оценивая результат в области предпросмотра (можно, в том числе, указать свой собственный символ, выбрав опцию “другой”). Задав требуемые настройки снова нажимаем кнопку “Далее”.
- В последнем окне, чаще всего, вносить какие-либо изменения в стандартные настройки не нужно. Но если требуется изменить формат какого-то столбца, сначала кликаем по нему в нижней части окна (поле “Образец”), после чего выбираем подходящий вариант. По готовности жмем “Готово”.
- Появится окошко, в котором выбираем способ импорта данных (на имеющемся или на новом листе) и жмем OK.
- Все готово, нам удалось импортировать данные CSV-файла. В отличие от первого метода, мы можем заметить, что была соблюдена ширина столбцов с учетом содержимого ячеек.
И последний метод, которым можно воспользоваться заключается в следующем:
- Запустив программу выбираем пункт “Отрыть”.Если программа уже ранее была открыта и ведется работа на определенном листе, переходим в меню “Файл”.Щелкаем по команде “Открыть” в списк команд.
- Жмем кнопку “Обзор”, чтобы перейти к окну Проводника.
- Выбираем формат “Все файлы”, переходим к месту хранения нашего документа, отмечаем его и щелкаем кнопку “Открыть”.
- На экране появится уже знакомый нам Мастер импорта текстов. Далее руководствуемся шагами, описанными в Методе 2.
Заключение
Таким образом, несмотря на кажущуюся сложность, программа Эксель вполне позволяет открывать и работать с файлами в формате CSV. Главное – определиться с методом реализации. Если при обычном открытии документа (двойным щелчком мыши или через контекстное меню) его содержимое содержит непонятные символы, можно воспользоваться Мастером текста, который позволяет выбрать подходящую кодировку и знак разделителя, что напрямую влияет на корректность отображаемой информации.
Преобразовываем CSV в Excel: как импортировать файлы CSV в электронные таблицы Excel
Смотрите также формат столбцов. CSV и нажать CSV, выделить его На данном этапе в текстовый файл, содержащих начальные нули,текстовые файлы с разделениемCtrl конвертировать файл CSV CSV. Если Вы вставьте следующий текст. был официально задокументирован. символами, например, «текст1,
(Данные) в разделе Excel. В Проводнике изменяет формат файла.В этой статье ВыНомер счёта и кнопку «Открыть». и нажать кнопку также можно изменить используя команду меню так, чтобы сохранить
значений запятыми (CSV),и щелкайте по в Excel. хотите раз и Обратите внимание, что Название CSV (Comma-Separated текст2», будет импортированGet External Data Windows дважды кликните
- Другими словами, файл найдёте 2 простых
- номер получателя надоПоявится окно, подобное Мастеру
Как преобразовать CSV в Excel
«Открыть». способ обработки последовательныхСохранить как их. Чтобы принудительно в которых в каждому файлуНа шаге 3 мастера навсегда изменить разделитель, это должна быть Values) возникло из-за как одно значение,(Получение внешних данных)
по файлу CSV при этом способа преобразовать файл преобразовать в текст, текстов в Excel,Выбранный вами файл сначала разделителей (например, идущих. запустить мастер импорта качестве разделителя полей.csv выберите столбцы, содержащие заданный по умолчанию, отдельная строка перед использования запятых для даже если в кликните
- .csv не будет преобразован
- CSV в Excel. иначе на выходе только вместо разделения запустится в «Мастере
- подряд кавычек).Выберите
Как открыть файл CSV в Excel
текста, можно перед текста обычно используется, который хотите открыть. значения с первыми то Вам подойдёт любыми другими данными: разделения полей данных. этом тексте содержится
From Text, и он откроется в файл Excel Кроме того, Вы будет искажение. всех действий на текстов», в которомДополнительные сведения о разделителяхФайл открытием файла изменить запятая (,).Когда выделены все нужные
- нулями и измените следующее решение.Чтобы установить разделитель запятую: Но это в символ, указанный Вами(Из текста).
- как новая книга (формат .xls или узнаете, как импортироватьВижу, что данные три этапа, все необходимо будет произвести и дополнительных параметрах >
- его расширение наМожно изменить знак разделителя, файлы CSV, нажмите формат этих столбцов
Изменяем разделители в настройкахsep=, теории. На самом как разделитель.В этомНайдите файл Excel. .xlsx), он сохранит в Excel несколько организованы достаточно криво. действия производятся в настройку некоторых параметров см. в статьеСохранить как
CSV или TXT используемый как в кнопку на текстовый. Так региональных стандартов.Чтобы установить разделитель точку деле, множество так примере мы указали.csv
Однако, этот способ сработает свой изначальный тип файлов CSV и Если файл маленький одном окне.
- перед вставкой данных Мастер импорта текста.
- . или импортировать текстовый
- TXT-, так иOpen Вы конвертируете ВашНажмите кнопку с запятой: называемых CSV-файлов используют
- запятую как разделитель,, который требуется импортировать, только в том (.csv или .txt).
- как справиться с — можно руками
В области «Импорт» выберите в книгу Excel.В операционной системе MicrosoftПоявится диалоговое окно файл путем подключения CSV-файлах. Это может(Открыть). файл CSV вStartsep=; другие символы для и кавычки как выберите его и
Как открыть файл CSV при помощи Проводника Windows
случае, если приложениеЗапустите Microsoft Excel, на ситуациями, когда часть проставить форматы. Если следующие параметры: «Кодировка»Сначала вам необходимо поставить Windows нажмите кнопкуСохранение документа к нему.
потребоваться для обеспеченияЭтот способ простой и Excel, сохранив нули(Пуск) и запуститеКак Вы уже догадались, разделения данных, например: ограничитель строк. В нажмите кнопку Microsoft Excel установлено вкладке данных из файла реальный файл большой — «Юникод (UTF-8); отметку напротив пункта
Пуск.В имеющийся лист можно успешного выполнения операций
- быстрый, и мы на своих местах.Control Panel таким образом можноТабуляция – TSV-файлы (tab-separated результате, все числаImport как программа, заданнаяHome CSV не отображается — рекомендую делать
- «Язык» — «Русский»; «с разделителями», которыйи выберите пунктВ поле импортировать данные из импорта и экспорта. могли бы назватьПризнаки: (Панель управления), кликните установить в качестве values) с разделителем десятичных(Импорт), или просто по умолчанию, для(Главная) нажмите корректно на листе
Как импортировать CSV в Excel
макрос. «Со строки» - находится в областиПанель управленияТип файла текстового файла какПримечание: его отличным, еслиНекоторые значения в пункт разделителя любой другойТочка с запятой – разрядов (которым тоже дважды кликните по открытия файловOpen Excel.katy_1985 «1». «Формат исходных данных»..выберите формат текстового
- диапазон внешних данных. Можно импортировать и экспортировать бы не одно Вашем файле CSVRegion and Language символ, просто указав SCSV-файлы (semicolon separated в нашем случае нужному CSV файлу.
- .csv(Открыть).Недавно мы начали изучать: Rioran, спасибо! всеВ области «Параметры разделителя»Затем вам нужно выбратьОткройте диалоговое окно изменения файла для листа.
- Щелкните ячейку, в которую до 1 048 обстоятельство – каждый похожи на даты,(Региональные стандарты) > его сразу после values) служит запятая!) будутОткроется Мастер импорта текстов,
- . Если это так,Появится диалоговое окно особенности формата CSV
получилось кроме последнего укажите пункт «Разделитель» непосредственно кодировку, которая региональных и языковыхНапример, выберите требуется поместить данные 576 строк и файл CSV открывается и Excel автоматическиAdditional Settings знака равенства.Некоторые вариации файлов CSV импортированы в одну
-
- Вам нужно просто то Вы будетеOpen (Comma-Separated Values – «номер счета и и выберите «Запятая» будет использоваться для параметров.Текстовые файлы (с разделителями из текстового файла. 16 384 столбцов. таким образом как преобразует такие значения(Дополнительные параметры). ОткроетсяВыберите нужный разделитель в разделяют поля данных
- ячейку, как это выполнить его шаги. видеть знакомую иконку(Открытие документа), в значения, разделённые запятой) номер получателя», они или «Точка с расшифровки данных файла.Введите новый разделитель в табуляции)На вкладкеТекстовый файл, созданный в отдельная книга Excel. из текстового формата диалоговое окно Excel. одинарными или двойными видно в областиПрежде, чем мы двинемся в Проводнике Windows выпадающем списке в и различные способы выходят искаженные. посмотрите запятой», как было В нашем регионе полеилиДанные другой программе, можно На практике переключение в формат даты.Customize FormatВ Excel 2013 кавычками, другие требуют предпросмотра на рисунке дальше, пожалуйста, посмотрите рядом с именем нижнем правом углу преобразования файла Excel пожалуйста вложение. рассказано выше, в применяется кодировка «ЮникодРазделитель элементов спискаCSV (разделители — запятые)в группе открыть как книгу туда-сюда между несколькимиПричина:(Настройка формата), в или 2010 на маркер последовательности байтов ниже. Если мы на снимок экрана файла. выберите в CSV. СегодняRioran зависимости от используемого (UYF-8)». Выберите ее..Получение внешних данных Microsoft Excel с открытыми файлами ExcelКак упоминалось выше,
- котором Вам нужно вкладке из Юникода (BOM), не укажем кавычки ниже, на немЕсли Excel не являетсяText Files мы займёмся обратным: разделителя в тексте
из списка «ФорматДважды нажмите кнопкуПримечание:нажмите кнопку помощью команды может быть крайне Excel открывает файл выбрать точку (.)Data например, UTF-8, для как ограничитель строк, показан исходный файл
- программой по умолчанию,(Текстовые файлы). процессом – импортомkaty_1985 файла. файла».ОК Различные форматы поддерживают разные
Из текстового или CSV-файлаОткрыть неудобным и обременительным. CSV в формате для параметра(Данные) в разделе корректной интерпретации Юникода. то все числа CSV и желаемый
вот как ВыНайдите в Проводнике Windows CSV в Excel., извините, не обратилНажмите «ОК».Нажмите кнопку «Далее».. наборы функциональных возможностей... При открытии текстовогоНадеюсь, теперь Вы легкоGeneralDecimal symbolData ToolsЭто отсутствие стандартов порождает будут импортированы в
Преобразование CSV в Excel: проблемы и решения
результат в Excel. можете это исправить: файл CSV иЭта статья покажет Вам, внимания, что номераТаблица будет вставлена. Итак,На втором этапе вПримечание: Дополнительные сведения оНайдите файл, который нужно файла в Microsoft сможете преобразовать любой(Общий), при этом(Разделитель целой и(Работа с данными) разнообразные проблемы, с
- разные ячейки. Надеюсь, это поможет
- Кликните правой кнопкой мыши откройте его, дважды как открывать CSV
в изначальном файле вы узнали второй Мастере текстов вам После изменения символа разделителя функциональных возможностях, поддерживаемых импортировать, и дважды Excel его формат файл CSV в
значения, похожие на дробной части), и нажмите которыми Вы можетеШаг 3. Вам лучше понять, по любому файлу кликнув по нему. в Excel и у Вас в метод, чем открыть
- необходимо определиться с элементов списка на различными форматами текстовых щелкните его.
- не изменяется — это Excel. Если у даты, преобразует из
- установить запятую (,)Text To Columns столкнуться, пытаясь преобразовать
Файл CSV отображается в Excel неправильно
Посмотрите в область почему мы выбираем.csvЕсли Вы открываете файл как импортировать одновременно кривой форме записаны
CSV, теперь перейдем символом-разделителем, выбрав или данном компьютере все файлов, см. вСледуйте инструкциям мастера импорта можно видеть в Вас возникают какие-либо текстового формата в для параметра(Текст по столбцам). файл Excel вData preview те или иныев Проводнике Windows CSV, то Excel несколько файлов CSV. — в экспоненциальном к третьему. точку с запятой, программы будут использовать
разделе Поддерживаемые Excel текста. Дополнительные сведения строке заголовка Microsoft вопросы или сложности, формат даты. Например,List separatorКогда запустится Мастер распределения CSV, и особенно,
- (Образец разбора данных). параметры настроек в и в открывшемся откроет его сразу Мы также обозначим формате. Это происходитКак бы странно это или запятую. Дело новый символ. Та форматы файлов. об использовании мастера Excel, где имя
- смело пишите мне если Вы открываете
- (Разделитель элементов списка). текста по столбцам, когда импортируете файл
Если Вы довольны последующем примере. контекстном меню нажмите же вставив данные возможные подводные камни при попытке работать ни звучало, но
- в том, что же процедура позволяетПерейдите в папку, в импорта текста см. отображается с расширением в комментариях. И файл CSV, содержащийПримечание переводчика: на первом шаге CSV в Excel. тем, как выглядятШаг 1.Open with в новую книгу и предложим наиболее с числом длиннее формат CSV можно от этого будет изменить символ на которой нужно сохранить в его справке, текстового файла (например, благодарю за терпение логины пользователей, тоДанные настройки приведены
- выберите формат данных Давайте разберёмся с Ваши данные, тогдаВыберите формат данных(Открыть с помощью) Excel. Если Вы эффективные решения. 15-ти знаков. Рекомендую открыть даже в зависеть корректность отображения принятый по умолчанию. новый текстовый файл, которую можно вызвать .TXT или .CSV). каждого, кто осилил
- запись «апр23» будет для английской локализацииDelimited известными проблемами, начиная жмите кнопку и номер строки, > открываете текстовый файлКак преобразовать CSV в из источника, откуда «Блокноте». Как говорилось добавляемой таблицы. ПрощеОбщие сведения о формулах и нажмите кнопку с помощью кнопкиПоследовательно выберите пункты чтение этой длинной преобразована в дату. Excel (и ряда(С разделителями) и с самой распространённой.Finish с которой нужноChoose default program (.txt), то Excel
Excel в .csv подтянулись в начале статьи, всего это сделать в ExcelСохранитьСправкафайл статьи до самогоРешение:
- других стран). Для нажмитеФайл CSV отображается в(Готово). начинать импорт. Чаще(Выбрать программу). запустит Мастер импортаПреобразование CSV в Excel: данные, получить число это файл текстового ориентируясь на образец,Рекомендации, позволяющие избежать появления.на любой странице> конца!Преобразуйте файл CSV русской локализации привычнееNext Excel неправильно (всеСовет: всего выбираютВыберите текстов. Подробнее об проблемы и решения
в нормальной форме. формата, соответственно, вы который приведен в неработающих формулОткроется диалоговое окно с мастера. Окончив работуОткрытьУрок подготовлен для Вас в Excel при будет использовать запятую(Далее). На втором данные помещены в
- Если в ВашемDelimitedExcel этом читайте вЕсли Вам нужно вытащитьamfor можете его открыть нижней части окна.Поиск ошибок в формулах напоминанием о том,
с мастером, нажмите. командой сайта office-guru.ru помощи Мастера импорта в качестве разделителя шаге выберите нужный первый столбец) файле CSV используется(С разделителями) ив списке рекомендованных разделе Импортируем CSV какую-то информацию на
Первые нули теряются при открытии файла CSV в Excel
: Замените в этих в текстовом редакторе. Выберите один изСочетания клавиш и горячие что в текстовом кнопкуВ диалоговом окне
Источник: https://www.ablebits.com/office-addins-blog/2014/05/01/convert-csv-excel/ текстов. На шаге целой и дробной разделитель и нажмитеПервые нули потеряны при последовательно более одной со строки
программ, убедитесь, что в Excel. лист Excel из ячейка точку на Итак, вот, что представленных пунктов и клавиши в Excel файле будет сохраненГотово
ОткрытьПеревел: Антон Андронов 3 мастера выберите части и точкуFinish открытии файла CSV запятой или другого1 стоит галочка дляЗамечание:
Excel преобразует некоторые значения в даты при открытии файла CSV
базы данных Вашей запятую( Ctrl+H,Наити - нужно сделать: нажмите «Далее».Функции Excel (по алфавиту) только текущий лист., чтобы завершить операциювыберите пункт
Автор: Антон Андронов столбцы с записями, с запятой для(Готово). в Excel символа-разделителя, то поставьте. Область предварительного просмотра параметраКогда Microsoft Excel компании, то первая Заменить на) иЗапустите «Блокнот» и нажмитеНа третьем шаге вамФункции Excel (по категориям) Если нужно сохранить
импорта.Текстовые файлыПримечание: похожими на даты, разделения элементов списка.Измените расширение сЗначения преобразованы в даты галочку для параметра в нижней частиAlways use the selected
открывает файл CSV, же идея, что переведите в числовой Ctrl+O. будет предложено задатьСуществует огромное количество разнообразных именно текущий лист,В диалоговом окне. Мы стараемся как можно
Как импортировать в Excel несколько файлов CSV
и измените форматДважды нажмите.csv при импорте файлаTreat consecutive delimiters as диалогового окна мастера program to
- то для того, приходит на ум, формат(число десятичных знаковВ «Проводнике» выберите файл. формат каждому столбцу расширений файлов, поэтому нажмите кнопкуИмпорт данныхНайдите нужный файл и оперативнее обеспечивать вас
- столбца на текстовый.ОКна CSV в Excel one показывает первые несколькоopen this kind of чтобы понять, как – экспортировать базу 0)После этого он будет отдельно. На самом не удивительно, чтоОКвыполните одно из дважды щелкните его. актуальными справочными материаламиЕсли Вам нужно достичь, чтобы закрыть диалоговые
- .txt.Признаки:(Считать последовательные разделители записей импортируемого файла file
именно импортировать каждый данных в файлkaty_1985 открыт в программе. деле в этом пользователь некоторые из. Другие листы можно указанных ниже действий.Если это текстовый файл на вашем языке. противоположного результата, то окна – всёОткрытие файлаВы пытаетесь открыть
одним), чтобы избежать CSV.(Всегда использовать выбранное столбец данных, он CSV, а затем: Rioran, спасибо, попробуемВот так просто можно нет необходимости, так них попросту не сохранить в отдельныхПри необходимости нажмите кнопку (с расширением ТХТ), Эта страница переведена
есть в определённом готово! С этого
.txt
файл CSV в
появления пустых ячеек.
office-guru.ru
Импорт и экспорт текстовых файлов (в формате TXT или CSV)
Шаг 2. приложение для такого использует настройки форматирования, импортировать файл CSV разобраться с источником. открыть CSV в как на отображение знает. В этой текстовых файлах, повторивСвойства запустится мастер импорта автоматически, поэтому ее столбце преобразовать значения момента Microsoft Excelв Excel приведёт Excel, и всеВыберите, куда вставлять импортированныеНа этом шаге типа файлов) и заданные по умолчанию. в Excel.
katy_1985 обычном «Блокноте». данных это никак статье мы расскажем, эту процедуру для, чтобы задать параметры текста. Окончив работу текст может содержать в даты, тогда будет открывать и к запуску Мастера данные попадают в данные, на существующий нужно выбрать разделители нажмите
Если данные соответствуют хотяСуществует 3 способа преобразования
-
: amfor, я сделалаТеперь вы знаете, чем не повлияет, поэтому чем открыть CSV. каждого из них. обновления, форматирования и
-
с мастером, нажмите неточности и грамматические установите формат отображать все файлы импорта текстов, и первый столбец.
или на новый и ограничитель строк.ОК бы одному из CSV в Excel: как вы сказали, открыть файл CSV
нажмите «Готово». Ниже будут перечисленыОткроется второе диалоговое окно макета импортируемых данных. кнопку
Импорт текстового файла путем его открытия в Microsoft Excel
ошибки. Для насDate CSV (с разделителем Вы сможете выбратьПричина: лист, и нажмитеDelimiter. следующих пунктов, то Вы можете открыть но проблема в — на выборПоявится новое окно, в программы, которые взаимодействуют с напоминанием оВ группе
-
Готово важно, чтобы эта(Дата) и выберите запятой) корректно. нужный разделитель, как
-
Корень проблемы кроетсяОК(Разделитель) – этоЭтим способом Вы можете воспользуйтесь Мастером импорта
-
файл с расширением том, что в
-
есть три программы. котором вам необходимо с этим форматом. том, что сохраняемыйКуда следует поместить данные?, чтобы завершить операцию статья была вам подходящий формат датыЗамечание:
-
это было описано в том, что, чтобы завершить импорт символ, который разделяет
-
импортировать данные из текстов:.csv итоге расчетные счета Ну, а в
выбрать область, вФайл с расширением CSV лист может содержатьвыполните одно из импорта. полезна. Просим вас в выпадающем списке.Установка в Панели в разделе Как в Ваших региональных файла CSV в значения в файле файлаВ файле CSV использованынепосредственно в Excel, отображаются но не целом, можно сказать которую будет вставлена хранит в себе возможности, которые не следующих действий:Статья: Мастер импорта текста уделить пару секундДумаю, Вы знаете, что управления Windows символов-разделителей импортировать CSV в и языковых настройках Excel. CSV. Если в.csv различные разделители; дважды кликнуть по верно — в
-
Импорт текстового файла путем подключения к нему
следующее: CSV-формат открывается добавляемая таблица. Обычно данные, заключенные в поддерживаются текстовыми форматами
-
Чтобы поместить данные в Дополнительные сведения о и сообщить, помогла
-
Microsoft Excel позволяет целой и дробной Excel. Windows и вСовет: Вашем файле CSVв существующий или
-
В файле CSV использованы файлу в Проводнике конце почему-то появляются
в текстовых редакторах выделяют ячейку «A1″ табличный формат. Исходя файлов. Если в выбранное расположение, выберите разделители и дополнительные ли она вам, открывать несколько файлов части и элементовОткройте файл CSV с Вашем файле CSVВы можете нажать использован какой-то символ, в новый лист различные форматы даты;
-
Windows либо импортировать нули, хотя их и табличных программах. и нажимают кнопку
-
из этого можно новом текстовом файле вариант параметры. с помощью кнопок
-
CSV при помощи списка изменит настройки точкой с запятой установлены различные разделители.
-
кнопку которого нет в Excel. В отличиеВы преобразуете данные, среди CSV в Excel,
-
быть не должно.Автор: Вадим Матузок «OK». сделать вывод, что нужно сохранить толькоНа существующий лист
-
-
-
Если файл имеет расширение внизу страницы. Для команды
символов, заданные по в качестве разделителя В Северной Америке
Properties предложенном списке, то от предыдущих двух которых есть числа как внешний источник Можете подсказать вkaty_1985После этого содержимое файла с ним взаимодействуют данные листа, нажмите. CSV, приложение Excel
Экспорт данных в текстовый файл путем его сохранения
удобства также приводимOpen умолчанию, для всех при помощи VBA. и некоторых других
-
(Свойства), чтобы настроить поставьте галочку в способов, он не с нулём в данных. Далее я
-
чем причина?: Добрый день! будет вставлено в
-
табличные редакторы. И кнопкуЧтобы поместить данные в автоматически откроет его
-
ссылку на оригинал(Открыть). программ на ВашемВот пример кода странах разделителем полей дополнительные параметры, такие
-
варианте просто открывает CSV начале, и Вы подробно расскажу обamforПодскажите пожалуйста как таблицу. Теперь вы это верный вывод.Да
-
-
верхний левый угол и отобразит данные (на английском языке).На вкладке компьютере, а не VBA, который открывает
-
списка по умолчанию как обновление, разметкаOther в Excel, а хотите сохранить этот этих трёх способах: перевести файл с знаете, чем открыть Именно поэтому при. Если имеются сомнения нового листа, выберите в новой книге.Импортировать данные из текстовых
-
File только в Microsoft в Excel файл является запятая. В и форматирование для(Другой) и введите именно конвертирует формат ноль; и укажу преимуществаHugo форматом csv в CSV. Но это возникновении вопроса: «Чем и необходимо получить вариантПримечание: файлов в Excel(Файл) нажмите Excel. CSV, где в то время как
импортированных данных. нужный символ. В.csvВы хотите предварительно просмотреть, и недостатки каждого: Номер счета должен
Изменение разделителя, используемого в текстовом файле
формат excel чтобы только одна программа, открыть CSV?», большинство дополнительные сведения оНовый лист .При открытии в Excel можно двумя способами:OpenПризнаки: качестве разделителя используется в Европейских странахЗамечание: нашем примере мы
в как будут импортированы из них. быть в текстовом
Изменение разделителя во всех текстовых CSV-файлах
-
при этом корректно переходим к следующей. пользователей предлагают использовать том, какие возможности. файлов с расширением
-
открыть файл в(Открыть) и вВаш файл CSV
-
точка с запятой. запятая используется какЕсли Ваш файл указали
-
.xlsx данные из файлаСпособ 1: Открываем файл
формате — импортируйте отображался формат данныхНа втором месте по один из самых Excel не поддерживаютсяНажмите кнопку CSV для интерпретации приложении Excel или выпадающем списке в
См. также
содержит значения с Код был написан
разделитель десятичных разрядов, CSV содержит численные
Tab
(если Вы используете CSV в Excel;
CSV в Excel
csv как внешние
support.office.com
Формат CSV — чем открыть?
в файле? популярности среди табличных популярных табличных редакторов форматами текстовых файлов,ОК способа импорта каждого импортировать его как нижней правой части первыми нулями, и несколько лет назад а разделителем полей
Программа 1: Microsoft Excel
данные или даты,(Знак табуляции) и Excel 2007, 2010Вам хочется большей гибкостиСпособ 2: Открываем файл данные, установив вСпасибо! редакторов программа LibreOffice — MS Excel. нажмите кнопку. столбца данных используются диапазон внешних данных. диалогового окна выберите эти нули теряются для более ранних
списка является точка Excel может преобразоватьComma
- или 2013) или в работе. CSV в Excel
- масетре тестовый форматRioran Calc. Конечно, процессИтак, перейдем непосредственно кСправкаПриложение Excel сохранит внешний
- текущие параметры по Чтобы экспортировать данныеText Files при открытии файла версий Excel (2000 с запятой. их с ошибками.
- (Запятая), чтобы каждый.xlsЧтобы заставить Excel запустить при помощи Проводника этим столбцам.: открытия CSV в
- тому, как открыть. диапазон данных в умолчанию. С помощью из Excel в
- (Текстовые файлы). CSV в Excel. и 2003), ноРешение: Чтобы изменить формат товар (они разделены(в версиях Excel Мастер импорта текстов, Windows
- Да и с
- katy_1985 ней мало чем CSV в Excel:Дополнительные сведения о сохранении выбранную позицию. мастера импорта текста текстовый файл, используйтеЧтобы выделить несколько файловПричина: если Вы достаточноЕсть несколько возможных импортированных данных, выберите табуляцией) начинался с 2003 и более Вы можете либоСпособ 3: Импортируем CSV датами там тоже
- , здравствуйте. отличается от предыдущейОткройте приложение и на файлов в другихЕсли Microsoft Excel не можно применять другие команду подряд, кликните поПо умолчанию, Microsoft хорошо знакомы с
- решений этой проблемы. столбец (столбцы), в новой строки, а ранних). изменить расширение фала в Excel ерунда… Вообще хотелосьЕсли задача разовая,
программы, но описать главном окне нажмите форматах см. в преобразует столбец в варианты преобразования столбцовСохранить как первому файлу, затем
Программа 2: LibreOffice Calc
Excel отображает файл VBA, то у Вы можете быстро которых возникли ошибки, информация о товаре,Откройте нужный лист Excel сДаже если файл CSV бы видеть часть можно сделать так:
- его все же по вкладке «Файл». статье Сохранение книги необходимый формат, данные в различные форматыи измените тип
- нажав и удерживая CSV в формате Вас не должно просмотреть приведённые ниже кликните по ним
- например, ID и и кликните по.csv создан в другой оригинального файла -1) Открываете этот стоит.
- В появившемся интерфейсе нажмите в другом формате можно преобразовать после данных. Например, в файла в раскрывающемся клавишу
- General возникнуть проблем с рекомендации и выбрать правой кнопкой мыши данные о продажах ячейке, куда нужнона программе, Вы всегда откроте его в
- файл в Excel,
Запустите приложение и в по пункту «Открыть». файла. импорта. Дополнительные сведения файле с расширением
Программа 3: «Блокнот»
меню.Shift(Общий), в котором его обновлением или наиболее подходящие для и в контекстном (они разделены запятыми), импортировать данные из.txt можете открыть его блокноте и отрежьте далее вкладка «Данные»
- главном меню нажмите К слову, для
- Если для импорта текстового
- см. в статьях CSV в столбце
Чаще всего используются два, кликните по крайнему первые нули отсекаются.
Заключение
изменением для работы конкретно Вашей задачи. меню выберите были помещены в файла(прежде чем открывать как книгу Excel десяток строк. => «Работа с
по кнопке «Открыть
fb.ru
как перевести формат csv в excel с корр. отобр. данных? (Формулы/Formulas)
вызова функции «Открыть» файла используется мастер
Преобразование чисел из дат может быть формата текстовых файлов: файл. Оба этиРешение: с файлами CSVУкажите правильный разделитель непосредственно
Format cells
разные ячейки..csv файл), либо импортировать при помощи команды
Ну а если Данными» => «Текст
файл». Также это можно использовать сочетание импорта текста, то текстового формата в установлен формат М/Д/Г,текстовые файлы с разделителями
файла, а такжеВместо того, чтобы с запятой в в файле CSV.(Формат ячеек).
Text qualifierили CSV в ExcelOpen и в блокноте
по столбцам» действие можно произвести, горячих клавиш Ctrl+O. на втором этапе числовой и Преобразование а в Excel (TXT), в которых все, что находятся
открывать файл .csv качестве разделителя.Откройте файл CSVФормат CSV используется уже(Ограничитель строк) –.txt так, как это
(Открыть). уже видите 3.02328E+192) Выбираете «С нажав Ctrl+O.Откроется окно файлового менеджера, работы мастера разделитель дат из текстового по умолчанию задан для разделения полей между ними, будут в Excel, запустите,Замечание: в любом текстовом более 30 лет, это символ, в. будет описано далее.
Замечание: 4.07028E+19 — то разделителями» => «Далее»Появится окно файлового менеджера. в котором вам текста можно изменить формата в формат формат Г/М/Д, или
текста обычно используется выделены.Чтобы выделить файлы, как мы это
Все показанные решения редакторе (подойдёт даже но несмотря на который заключены отдельныеНа вкладкеЭто самый быстрый способОткрытие файла CSV номеров счетов у => «Запятые» => В нем вам необходимо перейти в с символа табуляции даты.
необходимо преобразовать в знак табуляции (код
расположенные не подряд, делали ранее, Мастер изменяют разделитель только обычный блокнот) и его длительную историю, значения. Весь текст,Data открыть CSV в
в Excel не Вас уже нет… «Далее» => настраиваете нужно выбрать файл папку с файлом на другой символ.Лист Excel можно преобразовать текст столбец чисел,
знака ASCII 009); удерживайте клавишу импорта текстов, чтобы для данного файла в первой строке он никогда не
excelworld.ru
заключённый между такими
This has been driving me crazy all day (since indeed you can’t control the Excel column types before opening the CSV file), and this worked for me, using VB.NET and Excel Interop:
'Convert .csv file to .txt file.
FileName = ConvertToText(FileName)
Dim ColumnTypes(,) As Integer = New Integer(,) {{1, xlTextFormat}, _
{2, xlTextFormat}, _
{3, xlGeneralFormat}, _
{4, xlGeneralFormat}, _
{5, xlGeneralFormat}, _
{6, xlGeneralFormat}}
'We are using OpenText() in order to specify the column types.
mxlApp.Workbooks.OpenText(FileName, , , Excel.XlTextParsingType.xlDelimited, , , True, , True, , , , ColumnTypes)
mxlWorkBook = mxlApp.ActiveWorkbook
mxlWorkSheet = CType(mxlApp.ActiveSheet, Excel.Worksheet)
Private Function ConvertToText(ByVal FileName As String) As String
'Convert the .csv file to a .txt file.
'If the file is a text file, we can specify the column types.
'Otherwise, the Codes are first converted to numbers, which loses trailing zeros.
Try
Dim MyReader As New StreamReader(FileName)
Dim NewFileName As String = FileName.Replace(".CSV", ".TXT")
Dim MyWriter As New StreamWriter(NewFileName, False)
Dim strLine As String
Do While Not MyReader.EndOfStream
strLine = MyReader.ReadLine
MyWriter.WriteLine(strLine)
Loop
MyReader.Close()
MyReader.Dispose()
MyWriter.Close()
MyWriter.Dispose()
Return NewFileName
Catch ex As Exception
MsgBox(ex.Message)
Return ""
End Try
End Function