Дата в csv в дату в excel

В этой статье Вы найдёте 2 простых способа преобразовать файл CSV в Excel. Кроме того, Вы узнаете, как импортировать в Excel несколько файлов CSV и как справиться с ситуациями, когда часть данных из файла CSV не отображается корректно на листе Excel.

Недавно мы начали изучать особенности формата CSV (Comma-Separated Values – значения, разделённые запятой) и различные способы преобразования файла Excel в CSV. Сегодня мы займёмся обратным процессом – импортом CSV в Excel.

Эта статья покажет Вам, как открывать CSV в Excel и как импортировать одновременно несколько файлов CSV. Мы также обозначим возможные подводные камни и предложим наиболее эффективные решения.

  • Как преобразовать CSV в Excel
  • Преобразование CSV в Excel: проблемы и решения

Содержание

  1. Как преобразовать CSV в Excel
  2. Как открыть файл CSV в Excel
  3. Как открыть файл CSV при помощи Проводника Windows
  4. Как импортировать CSV в Excel
  5. Преобразование CSV в Excel: проблемы и решения
  6. Файл CSV отображается в Excel неправильно
  7. Первые нули теряются при открытии файла CSV в Excel
  8. Excel преобразует некоторые значения в даты при открытии файла CSV
  9. Как импортировать в 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).

  1. Запустите Microsoft Excel, на вкладке Home (Главная) нажмите Open (Открыть).
  2. Появится диалоговое окно Open (Открытие документа), в выпадающем списке в нижнем правом углу выберите Text Files (Текстовые файлы).Экспортируем файл CSV в Excel
  3. Найдите в Проводнике 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 не является программой по умолчанию, вот как Вы можете это исправить:

  1. Кликните правой кнопкой мыши по любому файлу .csv в Проводнике Windows и в открывшемся контекстном меню нажмите Open with (Открыть с помощью) > Choose default program (Выбрать программу).
  2. Выберите Excel в списке рекомендованных программ, убедитесь, что стоит галочка для параметра Always use the selected program to open this kind of file (Всегда использовать выбранное приложение для такого типа файлов) и нажмите ОК.Экспортируем файл CSV в Excel

Как импортировать CSV в Excel

Этим способом Вы можете импортировать данные из файла .csv в существующий или в новый лист Excel. В отличие от предыдущих двух способов, он не просто открывает CSV в Excel, а именно конвертирует формат .csv в .xlsx (если Вы используете Excel 2007, 2010 или 2013) или .xls (в версиях Excel 2003 и более ранних).

  1. Откройте нужный лист Excel и кликните по ячейке, куда нужно импортировать данные из файла .csv или .txt.
  2. На вкладке Data (Данные) в разделе Get External Data (Получение внешних данных) кликните From Text (Из текста).Экспортируем файл CSV в Excel
  3. Найдите файл .csv, который требуется импортировать, выберите его и нажмите кнопку Import (Импорт), или просто дважды кликните по нужному CSV файлу.Экспортируем файл CSV в Excel
  4. Откроется Мастер импорта текстов, Вам нужно просто выполнить его шаги.

Прежде, чем мы двинемся дальше, пожалуйста, посмотрите на снимок экрана ниже, на нем показан исходный файл CSV и желаемый результат в Excel. Надеюсь, это поможет Вам лучше понять, почему мы выбираем те или иные параметры настроек в последующем примере.

  1. Экспортируем файл CSV в Excel
    • Шаг 1. Выберите формат данных и номер строки, с которой нужно начинать импорт. Чаще всего выбирают Delimited (С разделителями) и со строки 1. Область предварительного просмотра в нижней части диалогового окна мастера показывает первые несколько записей импортируемого файла CSV.Экспортируем файл CSV в Excel
    • Шаг 2. На этом шаге нужно выбрать разделители и ограничитель строк. Delimiter (Разделитель) – это символ, который разделяет значения в файле CSV. Если в Вашем файле CSV использован какой-то символ, которого нет в предложенном списке, то поставьте галочку в варианте Other (Другой) и введите нужный символ. В нашем примере мы указали Tab (Знак табуляции) и Comma (Запятая), чтобы каждый товар (они разделены табуляцией) начинался с новой строки, а информация о товаре, например, ID и данные о продажах (они разделены запятыми), были помещены в разные ячейки.Text qualifier (Ограничитель строк) – это символ, в который заключены отдельные значения. Весь текст, заключённый между такими символами, например, «текст1, текст2», будет импортирован как одно значение, даже если в этом тексте содержится символ, указанный Вами как разделитель.В этом примере мы указали запятую как разделитель, и кавычки как ограничитель строк. В результате, все числа с разделителем десятичных разрядов (которым тоже в нашем случае служит запятая!) будут импортированы в одну ячейку, как это видно в области предпросмотра на рисунке ниже. Если мы не укажем кавычки как ограничитель строк, то все числа будут импортированы в разные ячейки.

      Экспортируем файл CSV в Excel

    • Шаг 3. Посмотрите в область Data preview (Образец разбора данных). Если Вы довольны тем, как выглядят Ваши данные, тогда жмите кнопку Finish (Готово).

Совет: Если в Вашем файле CSV используется последовательно более одной запятой или другого символа-разделителя, то поставьте галочку для параметра Treat consecutive delimiters as one (Считать последовательные разделители одним), чтобы избежать появления пустых ячеек.

  1. Выберите, куда вставлять импортированные данные, на существующий или на новый лист, и нажмите ОК, чтобы завершить импорт файла CSV в Excel.Экспортируем файл CSV в Excel

Совет: Вы можете нажать кнопку Properties (Свойства), чтобы настроить дополнительные параметры, такие как обновление, разметка и форматирование для импортированных данных.

  1. Экспортируем файл CSV в Excel

Замечание: Если Ваш файл 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 установлены различные разделители. В Северной Америке и некоторых других странах разделителем полей списка по умолчанию является запятая. В то время как в Европейских странах запятая используется как разделитель десятичных разрядов, а разделителем полей списка является точка с запятой.

Решение: Есть несколько возможных решений этой проблемы. Вы можете быстро просмотреть приведённые ниже рекомендации и выбрать наиболее подходящие для конкретно Вашей задачи.

  1. Укажите правильный разделитель непосредственно в файле CSV. Откройте файл CSV в любом текстовом редакторе (подойдёт даже обычный блокнот) и в первой строке вставьте следующий текст. Обратите внимание, что это должна быть отдельная строка перед любыми другими данными:
    • Чтобы установить разделитель запятую: sep=,
    • Чтобы установить разделитель точку с запятой: sep=;

    Как Вы уже догадались, таким образом можно установить в качестве разделителя любой другой символ, просто указав его сразу после знака равенства.

  2. Выберите нужный разделитель в Excel. В Excel 2013 или 2010 на вкладке Data (Данные) в разделе Data Tools (Работа с данными) нажмите Text To Columns (Текст по столбцам).Экспортируем файл CSV в ExcelКогда запустится Мастер распределения текста по столбцам, на первом шаге выберите формат данных Delimited (С разделителями) и нажмите Next (Далее). На втором шаге выберите нужный разделитель и нажмите Finish (Готово).

    Экспортируем файл CSV в Excel

  3. Измените расширение с .csv на .txt. Открытие файла .txt в Excel приведёт к запуску Мастера импорта текстов, и Вы сможете выбрать нужный разделитель, как это было описано в разделе Как импортировать CSV в Excel.
  4. Откройте файл CSV с точкой с запятой в качестве разделителя при помощи VBA. Вот пример кода VBA, который открывает в Excel файл CSV, где в качестве разделителя используется точка с запятой. Код был написан несколько лет назад для более ранних версий Excel (2000 и 2003), но если Вы достаточно хорошо знакомы с VBA, то у Вас не должно возникнуть проблем с его обновлением или изменением для работы с файлами CSV с запятой в качестве разделителя.

Замечание: Все показанные решения изменяют разделитель только для данного файла CSV. Если Вы хотите раз и навсегда изменить разделитель, заданный по умолчанию, то Вам подойдёт следующее решение.

  1. Изменяем разделители в настройках региональных стандартов. Нажмите кнопку Start (Пуск) и запустите Control Panel (Панель управления), кликните пункт Region and Language (Региональные стандарты) > Additional Settings (Дополнительные параметры). Откроется диалоговое окно Customize Format (Настройка формата), в котором Вам нужно выбрать точку (.) для параметра Decimal symbol (Разделитель целой и дробной части), и установить запятую (,) для параметра List separator (Разделитель элементов списка).

Примечание переводчика: Данные настройки приведены для английской локализации Excel (и ряда других стран). Для русской локализации привычнее будет использовать запятую в качестве разделителя целой и дробной части и точку с запятой для разделения элементов списка.

  1. Экспортируем файл CSV в ExcelДважды нажмите ОК, чтобы закрыть диалоговые окна – всё готово! С этого момента Microsoft Excel будет открывать и отображать все файлы CSV (с разделителем запятой) корректно.

Замечание: Установка в Панели управления Windows символов-разделителей целой и дробной части и элементов списка изменит настройки символов, заданные по умолчанию, для всех программ на Вашем компьютере, а не только в Microsoft Excel.

Первые нули теряются при открытии файла CSV в Excel

Признаки: Ваш файл CSV содержит значения с первыми нулями, и эти нули теряются при открытии файла CSV в Excel.

Причина: По умолчанию, Microsoft Excel отображает файл CSV в формате General (Общий), в котором первые нули отсекаются.

Решение: Вместо того, чтобы открывать файл .csv в Excel, запустите, как мы это делали ранее, Мастер импорта текстов, чтобы конвертировать файл CSV в Excel.

На шаге 3 мастера выберите столбцы, содержащие значения с первыми нулями и измените формат этих столбцов на текстовый. Так Вы конвертируете Ваш файл CSV в Excel, сохранив нули на своих местах.

Экспортируем файл CSV в Excel

Excel преобразует некоторые значения в даты при открытии файла CSV

Признаки: Некоторые значения в Вашем файле CSV похожи на даты, и Excel автоматически преобразует такие значения из текстового формата в формат даты.

Причина: Как упоминалось выше, Excel открывает файл CSV в формате General (Общий), при этом значения, похожие на даты, преобразует из текстового формата в формат даты. Например, если Вы открываете файл CSV, содержащий логины пользователей, то запись «апр23» будет преобразована в дату.

Решение: Преобразуйте файл CSV в Excel при помощи Мастера импорта текстов. На шаге 3 мастера выберите столбцы с записями, похожими на даты, и измените формат столбца на текстовый.

Экспортируем файл CSV в Excel

Если Вам нужно достичь противоположного результата, то есть в определённом столбце преобразовать значения в даты, тогда установите формат Date (Дата) и выберите подходящий формат даты в выпадающем списке.

Как импортировать в Excel несколько файлов CSV

Думаю, Вы знаете, что Microsoft Excel позволяет открывать несколько файлов CSV при помощи команды Open (Открыть).

  1. На вкладке File (Файл) нажмите Open (Открыть) и в выпадающем списке в нижней правой части диалогового окна выберите Text Files (Текстовые файлы).
  2. Чтобы выделить несколько файлов подряд, кликните по первому файлу, затем нажав и удерживая клавишу Shift, кликните по крайнему файл. Оба эти файла, а также все, что находятся между ними, будут выделены.Чтобы выделить файлы, расположенные не подряд, удерживайте клавишу Ctrl и щелкайте по каждому файлу .csv, который хотите открыть.
  3. Когда выделены все нужные файлы CSV, нажмите кнопку Open (Открыть).Экспортируем файл CSV в Excel

Этот способ простой и быстрый, и мы могли бы назвать его отличным, если бы не одно обстоятельство – каждый файл CSV открывается таким образом как отдельная книга Excel. На практике переключение туда-сюда между несколькими открытыми файлами Excel может быть крайне неудобным и обременительным.

Надеюсь, теперь Вы легко сможете преобразовать любой файл CSV в Excel. Если у Вас возникают какие-либо вопросы или сложности, смело пишите мне в комментариях. И благодарю за терпение каждого, кто осилил чтение этой длинной статьи до самого конца! 🙂

Оцените качество статьи. Нам важно ваше мнение:

Время на прочтение
5 мин

Количество просмотров 197K

Продукты HFLabs в промышленных объемах обрабатывают данные: адреса, ФИО, реквизиты компаний и еще вагон всего. Естественно, тестировщики ежедневно с этими данными имеют дело: обновляют тест-кейсы, изучают результаты очистки. Часто заказчики дают «живую» базу, чтобы тестировщик настроил сервис под нее.

Первое, чему мы учим новых QA — сохранять данные в первозданном виде. Все по заветам: «Не навреди». В статье я расскажу, как аккуратно работать с CSV-файлами в Excel и Open Office. Советы помогут ничего не испортить, сохранить информацию после редактирования и в целом чувствовать себя увереннее.

Материал базовый, профессионалы совершенно точно заскучают.

Что такое CSV-файлы

Формат CSV используют, чтобы хранить таблицы в текстовых файлах. Данные очень часто упаковывают именно в таблицы, поэтому CSV-файлы очень популярны.


CSV-файл состоит из строк с данными и разделителей, которые обозначают границы столбцов

CSV расшифровывается как comma-separated values — «значения, разделенные запятыми». Но пусть название вас не обманет: разделителями столбцов в CSV-файле могут служить и точки с запятой, и знаки табуляции. Это все равно будет CSV-файл.

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

Из-за своих преимуществ CSV — сверхпопулярный формат обмена данными, хотя ему уже лет 40. CSV используют прикладные промышленные программы, в него выгружают данные из баз.

Одна беда — текстового редактора для работы с CSV мало. Еще ничего, если таблица простая: в первом поле ID одной длины, во втором дата одного формата, а в третьем какой-нибудь адрес. Но когда поля разной длины и их больше трех, начинаются мучения.


Следить за разделителями и столбцами — глаза сломаешь

Еще хуже с анализом данных — попробуй «Блокнотом» хотя бы сложить все числа в столбце. Я уж не говорю о красивых графиках.

Поэтому CSV-файлы анализируют и редактируют в Excel и аналогах: Open Office, LibreOffice и прочих.

Ветеранам, которые все же дочитали: ребята, мы знаем об анализе непосредственно в БД c помощью SQL, знаем о Tableau и Talend Open Studio. Это статья для начинающих, а на базовом уровне и небольшом объеме данных Excel с аналогами хватает.

Как Excel портит данные: из классики

Все бы ничего, но Excel, едва открыв CSV-файл, начинает свои лукавые выкрутасы. Он без спроса меняет данные так, что те приходят в негодность. Причем делает это совершенно незаметно. Из-за этого в свое время мы схватили ворох проблем.

Большинство казусов связано с тем, что программа без спроса преобразует строки с набором цифр в числа.

Округляет. Например, в исходной ячейке два телефона хранятся через запятую без пробелов: «5235834,5235835». Что сделает Excel? Лихо превратит номера́ в одно число и округлит до двух цифр после запятой: «5235834,52». Так мы потеряем второй телефон.

Приводит к экспоненциальной форме. Excel заботливо преобразует «123456789012345» в число «1,2E+15». Исходное значение потеряем напрочь.

Проблема актуальна для длинных, символов по пятнадцать, цифровых строк. Например, КЛАДР-кодов (это такой государственный идентификатор адресного объекта: го́рода, у́лицы, до́ма).

Удаляет лидирующие плюсы. Excel считает, что плюс в начале строки с цифрами — совершенно лишний символ. Мол, и так ясно, что число положительное, коль перед ним не стоит минус. Поэтому лидирующий плюс в номере «+74955235834» будет отброшен за ненадобностью — получится «74955235834». (В реальности номер пострадает еще сильнее, но для наглядности обойдусь плюсом).

Потеря плюса критична, например, если данные пойдут в стороннюю систему, а та при импорте жестко проверяет формат.

Разбивает по три цифры. Цифровую строку длиннее трех символов Excel, добрая душа, аккуратно разберет. Например, «8 495 5235834» превратит в «84 955 235 834».

Форматирование важно как минимум для телефонных номеров: пробелы отделяют коды страны и города от остального номера и друг от друга. Excel запросто нарушает правильное членение телефона.

Удаляет лидирующие нули. Строку «00523446» Excel превратит в «523446».
А в ИНН, например, первые две цифры — это код региона. Для Республики Алтай он начинается с нуля — «04». Без нуля смысл номера исказится, а проверку формата ИНН вообще не пройдет.

Меняет даты под локальные настройки. Excel с удовольствием исправит номер дома «1/2» на «01.фев». Потому что Windows подсказал, что в таком виде вам удобнее считывать даты.

Побеждаем порчу данных правильным импортом

Если серьезно, в бедах виноват не Excel целиком, а неочевидный способ импорта данных в программу.

По умолчанию Excel применяет к данным в загруженном CSV-файле тип «General» — общий. Из-за него программа распознает цифровые строки как числа. Такой порядок можно победить, используя встроенный инструмент импорта.

Запускаю встроенный в Excel механизм импорта. В меню это «Data → Get External Data → From Text».

Выбираю CSV-файл с данными, открывается диалог. В диалоге кликаю на тип файла Delimited (с разделителями). Кодировка — та, что в файле, обычно определяется автоматом. Если первая строка файла — шапка, отмечаю «My Data Has Headers».

Перехожу ко второму шагу диалога. Выбираю разделитель полей (обычно это точка с запятой — semicolon). Отключаю «Treat consecutive delimiters as one», а «Text qualifier» выставляю в «{none}». (Text qualifier — это символ начала и конца текста. Если разделитель в CSV — запятая, то text qualifier нужен, чтобы отличать запятые внутри текста от запятых-разделителей.)

На третьем шаге выбираю формат полей, ради него все и затевалось. Для всех столбцов выставляю тип «Text». Кстати, если кликнуть на первую колонку, зажать шифт и кликнуть на последнюю, выделятся сразу все столбцы. Удобно.

Дальше Excel спросит, куда вставлять данные из CSV — можно просто нажать «OK», и данные появятся в открытом листе.


Перед импортом придется создать в Excel новый workbook

Но! Если я планирую добавлять данные в CSV через Excel, придется сделать еще кое-что.

После импорта нужно принудительно привести все-все ячейки на листе к формату «Text». Иначе новые поля приобретут все тот же тип «General».

  • Нажимаю два раза Ctrl+A, Excel выбирает все ячейки на листе;
  • кликаю правой кнопкой мыши;
  • выбираю в контекстном меню «Format Cells»;
  • в открывшемся диалоге выбираю слева тип данных «Text».


Чтобы выделить все ячейки, нужно нажать Ctrl+A два раза. Именно два, это не шутка, попробуйте

После этого, если повезет, Excel оставит исходные данные в покое. Но это не самая твердая гарантия, поэтому мы после сохранения обязательно проверяем файл через текстовый просмотрщик.

Альтернатива: Open Office Calc

Для работы с CSV-файлами я использую именно Calc. Он не то чтобы совсем не считает цифровые данные строками, но хотя бы не применяет к ним переформатирование в соответствии с региональными настройками Windows. Да и импорт попроще.

Конечно, понадобится пакет Open Office (OO). При установке он предложит переназначить на себя файлы MS Office. Не рекомендую: хоть OO достаточно функционален, он не до конца понимает хитрое микрософтовское форматирование документов.

А вот назначить OO программой по умолчанию для CSV-файлов — вполне разумно. Сделать это можно после установки пакета.

Итак, запускаем импорт данных из CSV. После двойного клика на файле Open Office показывает диалог.


Заметьте, в OO не нужно создавать новый воркбук и принудительно запускать импорт, все само

  1. Кодировка — как в файле.
  2. «Разделитель» — точка с запятой. Естественно, если в файле разделителем выступает именно она.
  3. «Разделитель текста» — пустой (все то же, что в Excel).
  4. В разделе «Поля» кликаю в левый-верхний квадрат таблицы, подсвечиваются все колонки. Указываю тип «Текст».

Штука, которая испортила немало крови: если по ошибке выбрать несколько разделителей полей или не тот разделитесь текста, файл может правильно открыться, но неправильно сохраниться.

Помимо Calc у нас в HFLabs популярен libreOffice, особенно под «Линуксом». И то, и другое для CSV применяют активнее, чем Excel.

Бонус-трек: проблемы при сохранении из Calc в .xlsx

Если сохраняете данные из Calc в экселевский формат .xlsx, имейте в виду — OO порой необъяснимо и масштабно теряет данные.


Белая пустошь, раскинувшаяся посередине, в оригинальном CSV-файле богато заполнена данными

Поэтому после сохранения я еще раз открываю файл и убеждаюсь, что данные на месте.

Если что-то потерялись, лечение — пересохранить из CSV в .xlsx. Или, если установлен Windows, импортнуть из CSV в Excel и сохранить оттуда.

После пересохранения обязательно еще раз проверяю, что все данные на месте и нет лишних пустых строк.

Если интересно работать с данными, посмотрите на наши вакансии. HFLabs почти всегда нужны аналитики, тестировщики, инженеры по внедрению, разработчики. Данными обеспечим так, что мало не покажется :)

 

alexjuk1

Пользователь

Сообщений: 12
Регистрация: 02.02.2020

Здравствуйте, столкнулся с проблемой при открытии файла .CSV формате при открытии в некоторых ячейках вместо чисел дата.
При смене формата получаю нерелевантную цифру типа 44290.
Пример во вложении.
Помогите пожалуйста.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

1. 44290 — это число, не цифра.
2. 44290 — в Excel это дата в десятичном формате —  количество дней. начиная с 01.01.1900
3. Excel похожие на даты значения (01.01, 1/2…) преобразует в даты. Перед выгрузкой в Excel диапазону выгрузки назначить текстовый формат.
Если это не поможет или такой вариант неприемлем, покажите файл-источник.

 

Marat Ta

Пользователь

Сообщений: 440
Регистрация: 11.02.2021

Откройте файл csv текстовым редактором и сделайте автозамену . (точка) на , (запятая).

В дату Excel автоматически переводит то, что с точкой и попадает в диапазон корректной даты — например 30.4 будет 30 апреля, а 31.04 перейдет без изменений.

Изменено: Marat Ta28.04.2021 12:21:28

 

Hugo

Пользователь

Сообщений: 23252
Регистрация: 22.12.2012

Открывайте файл не доблкликом, а как источник внешних данных из текста, там в мастере можно настроить текстовый формат. Ну или в PQ, если версия 2010 или новее.

 

Marat Ta

Пользователь

Сообщений: 440
Регистрация: 11.02.2021

Нет компа рядом проверить — возможен еще вариант заменить системный разделитель десятичных на . (точка) — и загрузить данные. После чего вернуть разделитель обратно на , (запятая).

Изменено: Marat Ta29.04.2021 05:56:00

 

alexjuk1

Пользователь

Сообщений: 12
Регистрация: 02.02.2020

#6

28.04.2021 12:15:32

Цитата
vikttur написал: покажите файл-источник.

файл источник прикрепил

Прикрепленные файлы

  • Пример 3.csv (18.21 КБ)

 

RAN

Пользователь

Сообщений: 7091
Регистрация: 21.12.2012

Это не источник. Это csv, уже побывавший в объятиях Excel. А ежели, все же, источник, то никакой подмены не происходит. Просто кто-то из вас измеряет мощность и габариты с помощью календаря.

 

alexjuk1

Пользователь

Сообщений: 12
Регистрация: 02.02.2020

К сожалению другого файла у меня нет. Уверен как то можно изменить, может формулу прописать, но у меня не хватает навыка.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

И что Вы хотите, если в источнике УЖЕ измененные данные?

 

Hugo

Пользователь

Сообщений: 23252
Регистрация: 22.12.2012

И на что нужно заменить июл.35?

 

Marat Ta

Пользователь

Сообщений: 440
Регистрация: 11.02.2021

В общем, ТС нужна функция обратного перевода даты в похожее число.
Типа 30 апреля = 30.04 или 30.4

Создайте новую тему…

Изменено: Marat Ta29.04.2021 06:01:11

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#12

29.04.2021 10:23:58

Не поможет…
1 февр — число могло быть 1.2 , 1/2, 2.1, 2/01

CSV не открывается правильно в Excel? В учебнике исследуются типичные проблемы и предлагаются наиболее эффективные решения.

Формат CSV обычно используется для импорта/экспорта данных между различными программами для работы с электронными таблицами. Название CSV (значения, разделенные запятыми) подразумевает использование запятой для разделения полей данных. Но это в теории. На практике многие так называемые файлы CSV разделяют данные с помощью других символов, таких как точка с запятой или табуляция. В некоторых реализациях поля данных заключаются в одинарные или двойные кавычки, а в других для правильной интерпретации Unicode требуется знак порядка байтов (BOM) Unicode, например UTF-8. Отсутствие стандарта порождает различные проблемы с преобразованием CSV в Excel.

Симптомы. При открытии CSV-файла в Excel все данные отображаются в одном столбце.

Причина. Чтобы разделить данные на столбцы, Excel использует разделитель списка, установленный в региональных настройках Windows. Это может быть как запятая (в Северной Америке и некоторых других странах), так и точка с запятой (в странах Европы). Если разделитель, используемый в конкретном CSV-файле, отличается от разделителя по умолчанию, этот файл открывается в одном столбце.

Решения. В этом случае есть несколько возможных решений, включая макросы VBA или глобальное изменение настроек Windows. Мы покажем, как быстро решить эту проблему, не меняя разделитель списка по умолчанию на вашем компьютере, чтобы ни одно из ваших приложений не пострадало.

Изменить разделитель в файле CSV

Чтобы Excel мог читать CSV с другим разделителем, вы можете определить разделитель непосредственно в этом файле. Для этого откройте файл в любом текстовом редакторе (Блокнот подойдет) и добавьте в первую строку приведенный ниже текст. Обратите внимание, это должна быть отдельная строка перед любыми другими данными:

  • Для разделения запятой: sep=,
  • Для разделения точкой с запятой: sep=;

Точно так же вы можете установить любой другой пользовательский разделитель — просто введите его после знака равенства.
Укажите разделитель в файле csv.

Определив соответствующий разделитель, вы теперь можете открыть файл обычным способом, из самого Excel или из проводника Windows.

Укажите разделитель при импорте файла CSV в Excel

Вместо того, чтобы открывать CSV-файл в Excel, импортируйте его с помощью мастера импорта текста (во всех версиях) или Power Query (в Excel 365 — 2016).

Мастер импорта текста предоставляет несколько вариантов разделителей на шаге 2. Как правило, вы должны выбрать:

  • Запятая для файлов значений, разделенных запятыми
  • Вкладка для текстовых файлов
  • Точка с запятой для файлов значений, разделенных точкой с запятой

Если вы не уверены, какой разделитель содержится в ваших данных, попробуйте разные разделители и посмотрите, какой из них работает прямо в предварительном просмотре данных.
Выберите разделитель при импорте файла CSV.

При создании подключения Power Query вы можете выбрать разделитель в диалоговом окне предварительного просмотра:
Выберите разделитель при создании подключения Power Query.

Подробные пошаговые инструкции см. в приведенных выше примерах.

Разделить ячейки с помощью функции «Текст в столбцы»

Если ваши данные уже перенесены в Excel, вы можете разделить их на разные столбцы с помощью кнопки Текст в столбцы особенность. По сути, он работает как мастер импорта текста: вы выбираете разделитель и Предварительный просмотр данных отражает изменения на лету:
Выберите разделитель, чтобы разделить текстовые значения на разные столбцы.

Подробную информацию см. в разделе Как разделить ячейки в Excel.

Как сохранить ведущие нули в Excel CSV

Симптомы. Некоторые значения в вашем CSV-файле содержат ведущие нули. Когда файл открывается в Excel, предыдущие нули теряются.

Причина. По умолчанию Microsoft Excel преобразует CSV-файлы в Общий формат, который удаляет начальные нули.

Решение. Вместо открытия импортируйте CSV в Excel и выберите Текст формат для проблемных столбцов.

Использование мастера импорта текста

Начать Мастер импорта текста автоматически измените расширение файла с .csv на .txt, а затем откройте текстовый файл из Excel. Или включите функцию «Из текста (прежняя версия)» и начните импорт CSV в Excel.

На шаге 3 мастера выберите столбец, содержащий значения с ведущими нулями, и измените его формат на Текст. Это позволит импортировать значения в виде текстовых строк, сохраняя все ведущие нули на месте.
Сохраняйте ведущие нули в Excel CSV.

Использование Power Query

Если вы предпочитаете импортировать CSV-файл в Excel, подключившись к нему, есть два способа сохранить начальные нули.

Способ 1: импортировать все данные в текстовом формате

В диалоговом окне предварительного просмотра в разделе Определение типа данных, выберите Не определять типы данных. Содержимое вашего CSV-файла будет загружено в Excel в виде текста, а все ведущие нули будут сохранены.
Чтобы оставить ведущие нули, загрузите CSV-файл в Excel как текст.

Примечание. Этот метод отлично работает, если ваш файл содержит только текстовые данные. Если существуют разные типы значений, используйте метод 2, чтобы определить соответствующий формат для каждого столбца отдельно.

Способ 2: установить формат для каждого столбца

В ситуации, когда ваш CSV-файл содержит различные типы данных, такие как текст, числа, валюты, даты и время, вы можете явно указать, какой формат следует использовать для каждого конкретного столбца.

  1. Под предварительным просмотром данных щелкните Преобразовать данные.
  2. В редакторе Power Query выберите столбец, в котором вы хотите сохранить предшествующие нули, и щелкните Тип данных > Текст.
    Чтобы сохранить предыдущие нули, выберите «Текст» для типа данных.
  3. При необходимости определите типы данных для других столбцов.
  4. Когда закончите редактирование, на Дом вкладка, в Закрывать выберите один из следующих вариантов:
    • Закрыть и загрузить — это загрузит результаты на новый лист в текущей книге.
    • Закрыть и загрузить To… — это позволит вам решить, куда загружать результаты.

Кончик. Эти методы также могут предотвратить другие манипуляции с вашими данными, которые Excel пытается выполнить автоматически. Например, если импортированные данные начинаются с «=», Excel попытается их вычислить. Применяя Текст формат, вы указываете, что значения являются строками, а не формулами.

Как исправить проблемы с форматом даты CSV в Excel

Симптомы. После преобразования CSV в Excel даты форматируются неправильно, дни и месяцы меняются местами, некоторые даты заменяются текстом, а некоторые текстовые значения автоматически форматируются как даты.

Причина. В вашем CSV-файле даты записываются в формате, отличном от формата даты по умолчанию, установленного в вашей операционной системе, из-за чего Excel не может правильно интерпретировать даты.

Решение. В зависимости от того, с какой именно проблемой вы столкнулись, попробуйте одно из следующих решений.

Дни и месяцы перепутаны

Если форматы даты в региональных настройках Windows и файле csv различаются, Excel не может определить, что мм/дд/гг даты, которые он ищет, хранятся в дд/мм/гг формат в этом конкретном файле. В результате единицы дня и месяца меняются местами: 3 января становится Мар-1, 10 января становится 1 октября, и так далее. Кроме того, даты после 12 января преобразуются в текстовые строки, потому что не существует 13-го, 14-го и т. д. месяцев.

Чтобы даты импортировались правильно, запустите Мастер импорта текста и выберите соответствующий формат даты на шаге 3:
Выберите подходящий формат <b>Даты</b>.» title=»Выберите подходящий формат <b>Даты</b>.»/></p><h3>Некоторые значения конвертируются в даты</h3><p>Microsoft Excel предназначен для упрощения ввода различных типов значений.  Поэтому, если Excel считает, что данное значение представляет дату, оно автоматически форматируется как дата.  Например, текстовая строка <em>23 апр</em> очень похоже <em>23 апреля</em>а также <em>11/3</em> напоминает <em>3 ноября</em>поэтому оба значения преобразуются в даты.</p><p>Чтобы Excel не заменял текстовые значения датами, используйте уже знакомый подход: преобразуйте CSV в Excel, импортировав его.  На шаге 3 из <em>Мастер импорта текста</em>выберите проблемный столбец и измените его формат на Текст.<br /><img data-lazyloaded=

Даты имеют неправильный формат

Когда CSV-файл открывается в Excel, даты обычно отображаются в формате по умолчанию. Например, в исходном файле у вас может быть 7 мая 21 или же 07.05.21а в Excel это выглядит как 07.05.2021.

Чтобы отобразить даты в нужном формате, используйте Формат ячеек особенность:

  1. Выберите столбец дат.
  2. Нажмите Ctrl + 1, чтобы открыть Формат ячеек диалоговое окно.
  3. На Число вкладку, выберите Дата под Категория.
  4. Под Типвыберите нужное форматирование.
  5. Нажмите «ОК».
    Изменение формата даты в Excel

Если ни один из предустановленных форматов вам не подходит, вы можете создать свой собственный, как описано в разделе Как создать собственный формат даты в Excel.

Запретить Excel преобразовывать числа в экспоненциальное представление

Симптомы. После преобразования CSV в Excel длинные числа форматируются в экспоненциальном формате, например, 1234578900 отображается как 1.23E+09.

Причина. В Microsoft Excel точность чисел ограничена 15 цифрами. Если числа в вашем CSV-файле превышают это ограничение, Excel автоматически преобразует их в экспоненциальное представление, чтобы соответствовать этому ограничению. Если число содержит более 15 значащих цифр, все «лишние» цифры в конце заменяются нулями.

Решение. Импортируйте длинные числа в виде текста или измените числовой формат непосредственно в Excel.

Импорт длинных чисел в виде текста

Чтобы точно перенести большие числа из CSV в Excel, запустите Мастер импорта текста и установите формат целевого столбца (столбцов) в Текст.
Импорт CSV в Excel без преобразования чисел в экспоненциальное представление.

Это единственное реальное решение для точного импорта числовых строк без потери данных, то есть без замены 16-й и последующих цифр на 0 или удаления ведущих нулей. Он отлично работает для таких записей, как идентификаторы продуктов, номера счетов, штрих-коды и тому подобное.

Однако, если ваши значения являются числами, а не строками, это не лучший метод, так как вы не сможете выполнять какие-либо математические операции с результирующими текстовыми значениями.

Изменить числовой формат в Excel

Если ваши данные уже находятся в Excel, вы можете изменить формат с Общий либо Текст или же Число как показано ниже:
Изменение формата с общего на числовой

Примечание. Этот метод не восстанавливает удаленные предшествующие нули или цифры после 15-й позиции, которые были заменены нулями.

Дополнительные сведения см. в разделе Как форматировать ячейки в Excel.

Сделать столбец шире

В простейшем случае, когда число содержит менее 15 цифр, достаточно сделать столбец немного шире, чтобы числа отображались нормально.
Чтобы цифры отображались нормально, измените размер столбца.

Дополнительные сведения см. в разделе Как изменить размер и автоматически подогнать столбцы в Excel.

Вот как можно исправить наиболее распространенные проблемы, которые могут возникнуть при преобразовании CSV в Excel. Спасибо за чтение и увидимся на следующей неделе!

Вас также могут заинтересовать

ExcelОчень долго я мучился при импорте данных из webmoney, adsense, blogun и прочих систем в CSV для Excel, получалась белиберда — часть цифр автоматически превращались в даты, приходилось сначала менять формат на числа, затем вручную вписывать каждую цифру, при том, что у меня в Adsense очень много сайтов, мучиться приходилось много и каждый месяц, так как я люблю считать прибыль, эффективность и прочие параметры, такие анализы часто дают хорошие идеи. Сегодня меня это задолбало и я решил поискать как решить эту проблему, трудно было сформулировать запрос для Яндекса, в итоге сформулировал это — «как открыть csv без формата дата» на четвертой строчке нашел обсуждение подобного на форуме, там было решение и я решил поделиться им здесь.

Точнее, там я нашел два решения, но первое требовало телодвижений — каждый раз при открытии файла надо делать импорт, затем нужному столбцу назначать формат «текстовый», а потом копировать все данные и давать числовой формат, я уже был готов к этому, но решил прочитать остальные советы и нашел намек про региональные стандарты, нужно просто в настройках точку сделать разделителем и все. При такой настройке, чтобы подсчитать суммы не нужно больше заменять точки на запятые, что решает сразу еще одну проблему.

Вот где нужно поменять настройки:

Файл — Параметры — Убираем галочку «Использовать системные разделители» — Разделитель целой и дробной части — «.» (точка). После этого все проблемы решились, жить стало легче.

P.S. При этом надо помнить, что вы выполнили такие настройки, если нужно будет передавать готовые файлы кому-то, кто будет открывать их на другом компьютере, могут быть проблемы.

Кстати, очень люблю Excel, использую его часто, как калькулятор, записную книжку и т.д. Даже матрицы по высшей математики когда-то решал в Excel создав формулы.

how can i convert the .csv file date format to excel date format time.

csv date format and time to excel date format and time
Nov 10 2014 9:06:29:846AM >> 11/10/2014 9:06AM

asked Nov 20, 2014 at 3:19

Anele's user avatar

1

You can either modify the format that the data comes to you at the export application or you can transform the date/times after you import that column in as text. There is no magical transformation that Excel uses that can adjust the data as provided. If you were able to get the data with the decimal portions of the seconds in the time prefaced with a decimal point as is the norm and the year was prefaced with a comma and a space instead of just a space then you would have a fighting chance. As it is, I know of no internal machinations that Excel can use to transform that data on-the-fly. Here is a more manual approach.

  1. Import your data to a new worksheet
  2. Insert a new column beside your date/times and format the column using the Custom Number Format of Type: mm/dd/yyyy h:mm AM/PM
  3. Put this formula into the second row of this new helper column IFERROR(DATEVALUE(LEFT(SUBSTITUTE(A6," 2014", ", 2014"),12)),0)+IFERROR(TIMEVALUE(REPLACE(RIGHT(REPT(" ",14)&A6,14),9,4," ")),0) and fill down as necessary to collect all values from the imported text-based dat/times you imported.
  4. Examine the new column to see if there are any errors. When you are happy with the results, Copy and Paste Special, Values back into the original column.
  5. [Optional] Delete or clear the helper column.

answered Nov 20, 2014 at 4:12

Понравилась статья? Поделить с друзьями:
  • Дата анализ для excel
  • Дата 5 апр 02 введенная в ячейку excel соответствует формату
  • Даны числа используя ms excel вычисли сумму данных чисел
  • Даны числа используя ms excel вычисли среднее арифметическое данных чисел
  • Дано изображение выберите верный ответ ms excel