Excel экспорт csv надстройка

Часто при формировании прайс-листов требуется выгрузить большой объём данных в текстовый файл в формате CSV (разделитель — точка с запятой, или запятая)
И далеко не всегда может помочь сохранение файла в этом формате, поскольку в выгрузку попадают лишние данные (заголовки таблиц, лишние строки и столбцы, и т.д.)

В данном случае поможет экспорт заданного диапазона ячеек в файл CSV, что проще всего сделать макросом с использованием функции Range2CSV:

Sub ЭкспортПрайсЛистаВФорматеCSV()
    On Error Resume Next
    Dim sh As Worksheet: Set sh = ActiveSheet    ' обрабатывается активный лист

    ' диапазон ячеек с A5 до последней заполненной ячейки в столбце A
    ' расширенный по горизонтали на 10 столбцов (выгружаются столбцы с A по J)
    Dim ra As Range: Set ra = sh.Range(sh.[A5], sh.Range("A" & sh.Rows.Count).End(xlUp)).Resize(, 10)
 
    ' формируем текстовую строку, содержащую текст диапазона в формате CSV
    CSVtext$ = Range2CSV(ra, ";")    ' можно указать другой разделитель столбцов

    ' создаём в папке с файлом XLS подпапку для CSV-прайсов (если такой папки ещё нет)
    CSVfolder$ = ThisWorkbook.Path & "CSV prices": MkDir CSVfolder$
 
    ' формируем имя создаваемого файла CSV (c указанием текущей даты)
    CSVfilename$ = Format(Now, "YYYY MM DD  HH-NN-SS") & ".csv"
 
    ' сохраняем текстовую CSV-строку CSVtext$ в файл с именем CSVfilename$
    SaveTXTfile CSVfolder$ & CSVfilename$, CSVtext$
End Sub

Вот код самой функции Range2CSV:

Function Range2CSV(ByRef ra As Range, Optional ByVal ColumnsSeparator$ = ";", _
                   Optional ByVal RowsSeparator$ = vbNewLine) As String
    If ra.Cells.Count = 1 Then Range2CSV = ra.Value & RowsSeparator$: Exit Function
    If ra.Areas.Count > 1 Then
        Dim ar As Range
        For Each ar In ra.Areas
            Range2CSV = Range2CSV & Range2CSV(ar, ColumnsSeparator$, RowsSeparator$)
        Next ar
        Exit Function
    End If
    arr = ra.Value
    buffer$ = ""    ' иначе конкатенация длинных текстовых строк притормаживает макрос
    For i = LBound(arr, 1) To UBound(arr, 1)
        txt = "": For j = LBound(arr, 2) To UBound(arr, 2): txt = txt & ColumnsSeparator$ & arr(i, j): Next j
        Range2CSV = Range2CSV & Mid(txt, Len(ColumnsSeparator$) + 1) & RowsSeparator$
        ' для многократного увеличения производительности при больших диапазонах данных
        If Len(Range2CSV) > 50000 Then buffer$ = buffer$ & Range2CSV  : Range2CSV = ""
    Next i
    Range2CSV = buffer$ & Range2CSV
End Function

Улучшенная версия кода (работает заметно быстрее), и дополнительно заключает текст всех ячеек в кавычки:

Function Range2CSV(ByRef ra As Range, Optional ByVal ColumnsSeparator$ = ";", _
                   Optional ByVal RowsSeparator$ = vbNewLine) As String
    If ra.Cells.Count = 1 Then Range2CSV = ra.Value & RowsSeparator$: Exit Function
    If ra.Areas.Count > 1 Then
        Dim ar As Range
        For Each ar In ra.Areas
            Range2CSV = Range2CSV & Range2CSV(ar, ColumnsSeparator$, RowsSeparator$)
        Next ar
        Exit Function
    End If
    arr = ra.Value
 
    ' иначе конкатенация длинных текстовых строк притормаживает макрос
    chr34$ = Chr(34): buffer$ = "": buffer2$ = "": Const BufferLen& = 15000
    For i = LBound(arr, 1) To UBound(arr, 1)
        txt = "": For j = LBound(arr, 2) To UBound(arr, 2)
            txt = txt & ColumnsSeparator$ & chr34$ & Replace(arr(i, j), chr34$, "'") & chr34$
        Next j
 
        buffer$ = buffer$ & Mid(txt, Len(ColumnsSeparator$) + 1) & RowsSeparator$
 
        ' для многократного увеличения производительности при больших диапазонах данных
        If Len(buffer$) > BufferLen& Then
            buffer2$ = buffer2$ & buffer$: buffer$ = ""
            If Len(buffer2$) > BufferLen& * 40 Then _
               Range2CSV = Range2CSV & buffer2$: buffer2$ = "" ': DoEvents
        End If
 
    Next i
    Range2CSV = Range2CSV & buffer2$ & buffer$
End Function

Для работы макроса понадобится ещё и функция сохранения текстового файла SaveTXTfile.
Найти её можно здесь: http://excelvba.ru/code/txt

Function SaveTXTfile(ByVal filename As String, ByVal txt As String) As Boolean
    On Error Resume Next: Err.Clear
    Set fso = CreateObject("scripting.filesystemobject")
    Set ts = fso.CreateTextFile(filename, True)
    ts.Write txt: ts.Close
    SaveTXTfile = Err = 0
    Set ts = Nothing: Set fso = Nothing
End Function

Содержание

    • 0.1 Как преобразовать файл Excel в CSV UTF-8
    • 0.2 Как преобразовать файл Excel в CSV UTF-16
  • 1 Как импортировать в Excel несколько файлов CSV
  • 2 Добавить «Экспорт в CSV» в Excel 2016, 2013, 2010, 2007
  • 3 Как работать с надстройкой:

CSV (Comma Separated Values) – распространённый формат для хранения табличных данных (числовых и текстовых) в виде простого текста. Этот формат файлов популярен и живуч благодаря тому, что огромное количество программ и приложений понимают CSV, хотя бы как альтернативный вариант файлового формата для импорта / экспорта. Более того, формат CSV позволяет пользователю заглянуть в файл и немедленно найти проблему с данными, если таковая имеется, изменить разделитель CSV, правила цитирования и так далее. Это возможно потому, что CSV – это простой текст, и даже не очень опытный пользователь, сможет легко его понять без специальной подготовки.

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

  • Преобразуем данные из формата Excel в CSV
  • Экспортируем из Excel в формат CSV UTF-8 или UTF-16
  • Другие способы преобразования из формата Excel в CSV (сохраняя специальные символы)

Как преобразовать файл Excel в CSV

Если требуется экспортировать файл Excel в какое-либо другое приложение, например, в адресную книгу Outlook или в базу данных Access, предварительно преобразуйте лист Excel в файл CSV, а затем импортируйте файл .csv в другое приложение. Ниже дано пошаговое руководство, как экспортировать рабочую книгу Excel в формат CSV при помощи инструмента Excel – «Сохранить как».

  1. В рабочей книге Excel откройте вкладку Файл (File) и нажмите Сохранить как (Save as). Кроме этого, диалоговое окно Сохранение документа (Save as) можно открыть, нажав клавишу F12.
  2. В поле Тип файла (Save as type) выберите CSV (разделители – запятые) (CSV (Comma delimited)).как сделать из excel csvКроме CSV (разделители – запятые), доступны несколько других вариантов формата CSV:
    • CSV (разделители – запятые) (CSV (Comma delimited)). Этот формат хранит данные Excel, как текстовый файл с разделителями запятыми, и может быть использован в другом приложении Windows и в другой версии операционной системы Windows.
    • CSV (Macintosh). Этот формат сохраняет книгу Excel, как файл с разделителями запятыми для использования в операционной системе Mac.
    • CSV (MS-DOS). Сохраняет книгу Excel, как файл с разделителями запятыми для использования в операционной системе MS-DOS.
    • Текст Юникод (Unicode Text (*txt)). Этот стандарт поддерживается почти во всех существующих операционных системах, в том числе в Windows, Macintosh, Linux и Solaris Unix. Он поддерживает символы почти всех современных и даже некоторых древних языков. Поэтому, если книга Excel содержит данные на иностранных языках, то рекомендую сначала сохранить её в формате Текст Юникод (Unicode Text (*txt)), а затем преобразовать в CSV, как описано далее в разделе Экспортируем из Excel в формат CSV UTF-8 или UTF-16.

Замечание: Все упомянутые форматы сохраняют только активный лист Excel.

  1. Выберите папку для сохранения файла в формате CSV и нажмите Сохранить (Save).После нажатия Сохранить (Save) появятся два диалоговых окна. Не переживайте, эти сообщения не говорят об ошибке, так и должно быть.
  2. Первое диалоговое окно напоминает о том, что В файле выбранного типа может быть сохранён только текущий лист (The selected file type does not support workbooks that contain multiple sheets). Чтобы сохранить только текущий лист, достаточно нажать ОК.как сделать из excel csvЕсли нужно сохранить все листы книги, то нажмите Отмена (Cancel) и сохраните все листы книги по-отдельности с соответствующими именами файлов, или можете выбрать для сохранения другой тип файла, поддерживающий несколько страниц.
  3. После нажатия ОК в первом диалоговом окне, появится второе, предупреждающее о том, что некоторые возможности станут недоступны, так как не поддерживаются форматом CSV. Так и должно быть, поэтому просто жмите Да (Yes).как сделать из excel csv

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

Экспортируем из Excel в CSV с кодировкой UTF-8 или UTF-16

Если на листе Excel содержатся какие-либо специальные или иностранные символы (тильда, ударение и подобные) или иероглифы, то преобразование листа Excel в CSV описанным выше способом не сработает.

Дело в том, что команда Сохранить как > CSV (Save as > CSV) исказит все символы, кроме ASCII (American Standard Code for Information Interchange). И если на листе Excel есть парные кавычки или длинные тире (перенесённые в Excel, например, из документа Word при копировании / вставке текста) – такие символы также будут искромсаны.

Простое решение – сохранить лист Excel как текстовый файл Unicode(.txt), и затем преобразовать его в CSV. Таким образом все символы, не входящие в ASCII, останутся в целости и сохранности.

Прежде чем двинуться дальше, позвольте мне кратко пояснить главные отличия между кодировками UTF-8 и UTF-16, чтобы в каждом индивидуальном случае Вы могли выбрать подходящий формат:

  • UTF-8 – это более компактная кодировка, использующая для каждого символа от 1 до 4 байт. Чаще всего рекомендуется использовать этот формат, когда символы ASCII преобладают в файле, т.к. большинство таких символов требует 1 байт памяти. Ещё одно преимущество в том, что кодировка файла UTF-8, содержащего только символы ASCII, ничем не будет отличаться от такого же ASCII-файла.
  • UTF-16 использует от 2 до 4 байт для хранения каждого символа. Учтите, что не во всех случаях файл UTF-16 требует больше места в памяти, чем файл UTF-8. Например, японские символы занимают от 3 до 4 байт в UTF-8 и от 2 до 4 байт в UTF-16. Таким образом, есть смысл использовать UTF-16, если данные содержат азиатские символы, в том числе Японские, Китайские и Корейские. Существенный недостаток этой кодировки в том, что она не полностью совместима с ASCII-файлами и требуются специальные программы для отображения таких файлов. Помните об этом, если планируете импортировать получившиеся файлы из Excel куда-то ещё.

Как преобразовать файл Excel в CSV UTF-8

Предположим, у нас есть лист Excel с иностранными символами, в нашем примере – это японские имена.

как сделать из excel csv

Чтобы экспортировать этот лист Excel в файл CSV, сохранив при этом все иероглифы, сделаем следующее:

  1. В Excel откройте вкладку Файл (File) и нажмите Сохранить как (Save as).
  2. Введите имя файла, в поле Тип файла (Save as type) выберите Текст Юникод (Unicode Text (*.txt)) и нажмите Сохранить (Save).как сделать из excel csv
  3. Откройте созданный файл в любом стандартном текстовом редакторе, например, в Блокноте.

Замечание: Не все простые текстовые редакторы полностью поддерживают символы Юникод, поэтому некоторые из них могут отображаться как прямоугольники. В большинстве случаев, это никак не повлияет на итоговый файл, и можно просто не обращать на это внимание или выбрать более продвинутый редактор, например, Notepad++.

  1. Так как в нашем текстовом Юникод файле в качестве разделителей используется символ табуляции, а мы хотим преобразовать его в CSV (разделители – запятые), то необходимо заменить символы табуляции на запятые.

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

  1. Если всё же нужен файл CSV (разделители – запятые), то выполните в Блокноте следующие действия:

    В Блокноте результат будет приблизительно вот такой:

    как сделать из excel csv

  2. Кликните Файл > Сохранить как (File > Save as), введите имя для файла и в выпадающем списке Кодировка (Encoding) выберите UTF-8. Затем нажмите кнопку Сохранить (Save).как сделать из excel csv
  3. Запустите Проводник Windows и измените расширение файла с .txt на .csv.По-другому изменить расширение .txt на .csv можно непосредственно в Блокноте. Для этого в диалоговом окне Сохранить как (Save as) в поле Тип файла (Save as type) выберите вариант Все файлы (All files), а к имени файла в соответствующем поле добавьте «.csv», как показано на рисунке ниже.как сделать из excel csv
  4. Откройте файл CSV в Excel, для этого на вкладке Файл (File) нажмите Открыть > Текстовые файлы (Open > Text files) и проверьте в порядке ли данные.

Замечание: Если Ваш файл предназначен для использования за пределами Excel и формат UTF-8 является обязательным требованием, то не совершайте на листе никаких изменений и не сохраняйте его снова в Excel, поскольку это может привести к проблемам с чтением кодировки. Если какая-то часть данных не отображается в Excel, откройте тот же файл в Блокноте и в нём внесите исправления в данные. Не забудьте снова сохранить файл в формате UTF-8.

Как преобразовать файл Excel в CSV UTF-16

Экспортировать в файл CSV UTF-16 намного быстрее и проще, чем в UTF-8. Дело в том, что Excel автоматически применяет формат UTF-16 при сохранении файла как Текст Юникод (Unicode Text).

Для этого сохраняем файл при помощи инструмента Сохранить как (Save as) в Excel и затем в Проводнике Windows изменяем расширение созданного файла на .csv. Готово!

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

Другие способы преобразования файлов Excel в CSV

Описанные выше способы экспорта данных из Excel в CSV (UTF-8 и UTF-16) универсальны, т.е. подойдут для работы с любыми специальными символами и в любой версии Excel от 2003 до 2013.

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

Преобразуем файл Excel в CSV при помощи Таблиц Google

Как оказалось, можно очень просто преобразовать файл Excel в CSV при помощи Таблиц Google. При условии, что на Вашем компьютере уже установлен Google Drive, выполните следующие 5 простых шагов:

  1. В Google Drive нажмите кнопку Создать (Create) и выберите Таблица (Spreadsheet).
  2. В меню Файл (File) нажмите Импорт (Import).как сделать из excel csv
  3. Кликните Загрузка (Upload) и выберите файл Excel для загрузки со своего компьютера.
  4. В диалоговом окне Импорт файла (Import file) выберите Заменить таблицу (Replace spreadsheet) и нажмите Импорт (Import).как сделать из excel csv

Совет: Если файл Excel относительно небольшой, то для экономии времени можно перенести из него данные в таблицу Google при помощи копирования / вставки.

  1. В меню Файл (File) нажмите Скачать как (Download as), выберите тип файла CSV – файл будет сохранён на компьютере.как сделать из excel csv

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

Сохраняем файл .xlsx как .xls и затем преобразуем в файл CSV

Для этого способа не требуется каких-либо дополнительных комментариев, так как из названия уже всё ясно.

Это решение я нашёл на одном из форумов, посвящённых Excel, уже не помню, на каком именно. Честно говоря, я никогда не использовал этот способ, но, по отзывам множества пользователей, некоторые специальные символы теряются, если сохранять непосредственно из .xlsx в .csv, но остаются, если сначала .xlsx сохранить как .xls, и затем как .csv, как мы делали в начале этой статьи.

Так или иначе, попробуйте сами такой способ создания файлов CSV из Excel, и если получится, то это будет хорошая экономия времени.

Сохраняем файл Excel как CSV при помощи OpenOffice

OpenOffice – это пакет приложений с открытым исходным кодом, включает в себя приложение для работы с таблицами, которое отлично справляется с задачей экспорта данных из формата Excel в CSV. На самом деле, это приложение предоставляет доступ к большему числу параметров при преобразовании таблиц в файлы CSV (кодировка, разделители и так далее), чем Excel и Google Sheets вместе взятые.

Просто открываем файл Excel в OpenOffice Calc, нажимаем Файл > Сохранить как (File > Save as) и выбираем тип файла Текст CSV (Text CSV).

На следующем шаге предлагается выбрать значения параметров Кодировка (Character sets) и Разделитель поля (Field delimiter). Разумеется, если мы хотим создать файл CSV UTF-8 с запятыми в качестве разделителей, то выбираем UTF-8 и вписываем запятую (,) в соответствующих полях. Параметр Разделитель текста (Text delimiter) обычно оставляют без изменения – кавычки («). Далее нажимаем ОК.

как сделать из excel csv

Таким же образом для быстрого и безболезненного преобразования из Excel в CSV можно использовать ещё одно приложение – LibreOffice. Согласитесь, было бы здорово, если бы Microsoft Excel предоставил возможность так же настраивать параметры при создании файлов CSV.

В этой статье я рассказал об известных мне способах преобразования файлов Excel в CSV. Если Вам знакомы более эффективные методы экспорта из Excel в CSV, расскажите об этом в комментариях. Благодарю за внимание!

Урок подготовлен для Вас командой сайта office-guru.ru
Источник: /> Перевел: Антон Андронов

Правила перепечаткиЕще больше уроков по Microsoft Excel

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

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

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

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

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

Как преобразовать 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 (Текстовые файлы).как сделать из excel csv
  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 (Всегда использовать выбранное приложение для такого типа файлов) и нажмите ОК.как сделать из excel csv

Как импортировать 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 (Из текста).как сделать из excel csv
  3. Найдите файл .csv, который требуется импортировать, выберите его и нажмите кнопку Import (Импорт), или просто дважды кликните по нужному CSV файлу.как сделать из excel csv
  4. Откроется Мастер импорта текстов, Вам нужно просто выполнить его шаги.

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

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

      как сделать из excel csv

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

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

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

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

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

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

  2. Выберите нужный разделитель в Excel. В Excel 2013 или 2010 на вкладке Data (Данные) в разделе Data Tools (Работа с данными) нажмите Text To Columns (Текст по столбцам).Когда запустится Мастер распределения текста по столбцам, на первом шаге выберите формат данных Delimited (С разделителями) и нажмите Next (Далее). На втором шаге выберите нужный разделитель и нажмите Finish (Готово).
  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. Дважды нажмите ОК, чтобы закрыть диалоговые окна – всё готово! С этого момента 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 (Дата) и выберите подходящий формат даты в выпадающем списке.

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

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

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

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

Урок подготовлен для Вас командой сайта office-guru.ru
Источник: /> Перевел: Антон Андронов

Правила перепечаткиЕще больше уроков по Microsoft Excel

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

Конвертер файлов / Документы / Конвертировать в XLS / CSV конвертер / XLS в CSV

Вы можете перевести XLS документ в CSV и во множество других форматов с помощью бесплатного онлайн конвертера.

Как сконвертировать csv в xls?

Шаг 1

Загрузите xls-файл

Выберите файл с компьютера, Google Диска, Dropbox или перетащите его на страницу

Шаг 2

Выберите «в csv»

Выберите csv или любой другой формат, который вам нужен (более 100 поддерживаемых форматов)

Шаг 3

Скачайте ваш csv файл

Подождите пока ваш файл сконвертируется и вы сразу сможете его скачать csv -файл

Microsoft Excel Binary File Format

Описание

XLS – представляет собой электронную таблицу, созданную популярным приложением Microsoft Excel. Включает в себя данные документа, которые расположены в ячейках, обладающих определенным адресом. Они могут содержать формулы, математические уравнения, имеющие связь с информацией в других ячейках, и фиксированные сведения. Нередко применяется для разработки графиков и схем. Формат позволяет хранить и редактировать большой круг параметров – изображения, таблицы, макросы, шрифты, диаграммы. Широко использовался до появления версии Excel 2007 года, а затем был заменен на расширение XMLSS. Сведения внутри документа XLS содержатся в серии потоков статичного размера, их месторасположение описывается с помощью нескольких таблиц распределения сегментов. Отличается обратной совместимостью и поддерживает различные форматы файлов, созданных для DOS. Нередко применяется веб-браузерами с целью исключить использование бинарных форматов. Утилита входит в офисный пакет Microsoft и кроме Excel может открываться различными приложениями вроде Apache Open Office, Libre Office, адаптированных к ОС MacOS, Windows или Linux.

Технические детали

Востребованность формата объясняется его простотой, хотя он не поддерживает отдельные функции, например, хранение макросов VBA. Вплоть до появления XMLSS приложение Excel при форматировании применяло расширение Biff, созданное на базе формата-контейнера IFF. Благодаря этому были доступны изменения шаблонов книг и их содержание. После внедрения в 2007 году нового формата программа не утратила свойств обратно совместимой, что гарантирует широкое распространение XLS и в будущем. Впоследствии на смену расширению XLS пришли форматы XLSM, XLSB и XLSX.

Программы

Microsoft Office

LibreOffice

Kingsoft Office

Google Docs

Основная программа

Microsoft Office

Comma Separated Values File

Описание

CSV – представляет собой особый текстовый формат, данные внутри которого разделены запятыми. Разработаны в начале 70-х годов XX века для импортирования различной табличной информации и переноса объемных сведений между базами в текстовом формате. Каждая строка файла выступает как один ряд базы данных. С помощью приложения крупноформатных таблиц файлы CSV способны систематизироваться в ячейки и добавляться в соответствующую базу. Параметры каждой колонки разделяются с помощью запятых, при наличии зарезервированных символов (например, точка с запятой или новая строчка) в роли разделителя выступают двойные кавычки. Это позволяет беспрепятственно передавать информацию между разными программами. CSV в ряде случаев именуют плоскими файлами. Они могут открываться большинством редакторов, способных работать с таблицами и текстами, среди которых как аутентичный Excel, так и утилиты с открытым кодом наподобие Apache Open Office и Libre Office.

Технические детали

На персональных компьютерах расширение CSV включает в себя множество значений, представленных в виде таблиц ASCII. При этом текстовые строки четко организованы, поэтому все значения отделены друг от друга запятыми или двойными кавычками (если есть зарезервированные символы). Использование различных разделителей допускает наличие неодинаковой кодировки.

Программы

Microsoft Excel

Microsoft Works

Corel Quattro Pro

Apache OpenOffice

LibreOffice

Microsoft Notepad

Libre Office

MobiSystems OfficeSuite Pro 7

MIME type

text/comma-separated-values

Популярность текстовых файлов CSV объясняется тем, что этот формат поддерживается большинством приложений. Поэтому конвертация файлов Excel в файлы CSV с разделителями-запятыми вполне привычная операция. Но что если вам нужно экспортировать не весь лист, а только выбранный диапазон, или применить другой разделитель? Кроме того, операция «Сохранить как CSV» автоматически закрывает книгу Excel — и это осложняет работу при необходимости экспортировать данные многократно.

Надстройка «Экспорт в CSV» упрощает этот рутинный процесс:

  • Конвертация диапазонов из XLSX (XLS) в CSV
  • Выбор разделителя: запятая, точка с запятой, табуляция, вертикальная черта
  • Экспорт в CSV значений или значений с форматом
  • Сохранить как CSV без закрытия исходного файла Excel
  • Корректный экспорт объединённых ячеек

Язык видео: английский. Субтитры: русский, английский. (Внимание: видео может не отражать последние обновления. Используйте инструкцию ниже.)

Добавить «Экспорт в CSV» в Excel 2016, 2013, 2010, 2007

Подходит для: Microsoft Excel 2016 – 2007, desktop Office 365 (32-бит и 64-бит).

Скачать надстройку XLTools

Как работать с надстройкой:

  • Как экспортировать выбранный диапазон из Excel в CSV
  • Как экспортировать значения или значения с форматом из Excel в CSV
  • Как изменить стандартную запятую на разделитель точка с запятой, табуляция или вертикальная черта
  • Как экспортировать в CSV диапазон с объединёнными ячейками
  • Как сохранить данные Excel как CSV без закрытия Excel файла

Как экспортировать выбранный диапазон из Excel в CSV

  1. Выбелите таблицу или диапазон ячеек.
  2. Нажмите кнопку «Экспорт в CSV» на панели инструментов XLTools > Откроется диалоговое окно.
  3. Настройте параметры отображения данных в файле CSV и выберите разделитель.
  4. Нажмите ОК > Сохраните CSV файл на свой компьютер > Готово.

Как экспортировать значения или значения с форматом из Excel в CSV

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

  1. Выберите диапазон > Нажмите кнопку «Экспорт в CSV».
  2. Настройте параметры отображения значений в файле CSV:
    • Выберите «Сохранить формат значения» > Экспортированные значения будут отображаться в том же формате, что задан в Excel, напр. 10%, 16 марта 2015 г., $40.
    • Выберите «Сохранить значение» > Значения будут экспортированы в формате по умолчанию, напр. 0.1, 16.03.2015, 40.00.

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

  1. Выберите диапазон > Нажмите кнопку «Экспорт в CSV».
  2. Выберите походящий разделитель между значениями в CSV файле результата:
    • Запятая
    • Точка с запятой
    • Табуляция
    • Вертикальная черта

Как экспортировать в CSV диапазон с объединёнными ячейками

  1. Выберите диапазон с объединёнными ячейками > Нажмите кнопку «Экспорт в CSV».
  2. Отметьте флажком «Дублировать значения при экспорте объединённых ячеек» > Надстройка продублирует содержимое объединённых ячеек в соответствующих местах текстовых строк в CSV.

Как сохранить данные Excel как CSV без закрытия Excel файла

Когда вы конвертируете Excel файлы через «Сохранить как…CSV», появляется сообщение: «Некоторые возможности станут недоступными». Далее, похоже, что ваш исходный XLSX-файл замещён CSV-файлом. На самом же деле, ваш исходный файл Excel был автоматически закрыт. Вместо него в интерфейсе Excel открываться только что сгенерированный файл CSV. Поэтому после каждой конвертации приходится снова и снова открывать исходный документ Excel. Это отнимает время и вносит риск потери несохранённых изменений исходных данных.

Надстройка «Экспорт в CSV» оптимизирует рутинный экспорт XLSX-в-CSV:

  1. Выбелите диапазон > Нажмите «Экспорт в CSV» > Установите параметры CSV файла.
  2. Нажмите ОК > Присвойте имя и сохраните файл на свой компьютер.
  3. Готово. Обратите внимание, что исходный Excel файл остался открытым. Его расширение не изменилось.
  4. При необходимости внесите изменения и продолжите — без перебоев — экспортировать другие диапазоны.

Вы можете также «Открыть CSV файл после экспорта», чтобы сразу увидеть результат. Файл откроется в новом окне Excel.

Появились вопросы или предложения? Оставьте комментарий ниже.

Экспорт в CSV из Excel: экспорт выбранных диапазонов без закрытия исходного файла

Популярность текстовых файлов CSV объясняется тем, что этот формат поддерживается большинством приложений. Поэтому конвертация файлов Excel в файлы CSV с разделителями-запятыми вполне привычная операция. Но что если вам нужно экспортировать не весь лист, а только выбранный диапазон, или применить другой разделитель? Кроме того, операция «Сохранить как CSV» автоматически закрывает книгу Excel — и это осложняет работу при необходимости экспортировать данные многократно.

Надстройка «Экспорт в CSV» упрощает этот рутинный процесс:

  • Конвертация диапазонов из XLSX (XLS) в CSV
  • Выбор разделителя: запятая, точка с запятой, табуляция, вертикальная черта
  • Экспорт в CSV значений или значений с форматом
  • Сохранить как CSV без закрытия исходного файла Excel
  • Корректный экспорт объединённых ячеек

Язык видео: английский. Субтитры: русский, английский. (Внимание: видео может не отражать последние обновления. Используйте инструкцию ниже.)

Добавить «Экспорт в CSV» в Excel 2019, 2016, 2013, 2010

Подходит для: Microsoft Excel 2019 – 2010, desktop Office 365 (32-бит и 64-бит).

Как работать с надстройкой:

Как экспортировать выбранный диапазон из Excel в CSV

  1. Выбелите таблицу или диапазон ячеек.
  2. Нажмите кнопку «Экспорт в CSV» на панели инструментов XLTools > Откроется диалоговое окно.
  3. Настройте параметры отображения данных в файле CSV и выберите разделитель.
  4. Нажмите ОК > Сохраните CSV файл на свой компьютер > Готово.

Как экспортировать значения или значения с форматом из Excel в CSV

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

  1. Выберите диапазон > Нажмите кнопку «Экспорт в CSV».
  2. Настройте параметры отображения значений в файле CSV:
    • Выберите «Сохранить формат значения» > Экспортированные значения будут отображаться в том же формате, что задан в Excel, напр. 10%, 16 марта 2015 г., $40.
    • Выберите «Сохранить значение» > Значения будут экспортированы в формате по умолчанию, напр. 0.1, 16.03.2015, 40.00.

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

  1. Выберите диапазон > Нажмите кнопку «Экспорт в CSV».
  2. Выберите походящий разделитель между значениями в CSV файле результата:
    • Запятая
    • Точка с запятой
    • Табуляция
    • Вертикальная черта

Как экспортировать в CSV диапазон с объединёнными ячейками

  1. Выберите диапазон с объединёнными ячейками > Нажмите кнопку «Экспорт в CSV».
  2. Отметьте флажком «Дублировать значения при экспорте объединённых ячеек» > Надстройка продублирует содержимое объединённых ячеек в соответствующих местах текстовых строк в CSV.

Как сохранить данные Excel как CSV без закрытия Excel файла

Когда вы конвертируете Excel файлы через «Сохранить как…CSV», появляется сообщение: «Некоторые возможности станут недоступными». Далее, похоже, что ваш исходный XLSX-файл замещён CSV-файлом. На самом же деле, ваш исходный файл Excel был автоматически закрыт. Вместо него в интерфейсе Excel открываться только что сгенерированный файл CSV. Поэтому после каждой конвертации приходится снова и снова открывать исходный документ Excel. Это отнимает время и вносит риск потери несохранённых изменений исходных данных.

Надстройка «Экспорт в CSV» оптимизирует рутинный экспорт XLSX-в-CSV:

  1. Выбелите диапазон > Нажмите «Экспорт в CSV» > Установите параметры CSV файла.
  2. Нажмите ОК > Присвойте имя и сохраните файл на свой компьютер.
  3. Готово. Обратите внимание, что исходный Excel файл остался открытым. Его расширение не изменилось.
  4. При необходимости внесите изменения и продолжите — без перебоев — экспортировать другие диапазоны.

Вы можете также «Открыть CSV файл после экспорта», чтобы сразу увидеть результат. Файл откроется в новом окне Excel.

Появились вопросы или предложения? Оставьте комментарий ниже.

6 Комментариев к Экспорт в CSV из Excel: экспорт выбранных диапазонов без закрытия исходного файла

Здравствуйте! А как выгрузить данные в csv из модели данных в экселе? Работаю с массивом на несколько миллионов строк. Спасибо.

Stas, добрый день. Отличный вопрос! Построив модель данных, сформируйте нужную сводную таблицу PowerPivot. Далее используйте надстройку как обычно:

Вкладка XLTools > Экспорт в CSV > Выбрать диапазон (кликните на одну ячейку таблицы, и вся таблица будет выбрана автоматически) > Выберите нужные опции CSV файла > OK > Сохраните CSV файл.

Это баловство можно и руками так же делать, как и здесь это приходится руками.
Нужно, что бы это делалось автоматически раз в 1 сек, с возможность настроек до 60 сек.
Есть такое в этой надстройке?

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

Импорт и экспорт текстовых файлов (в формате TXT или CSV)

В этом курсе:

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

Чаще всего используются два формата текстовых файлов:

текстовые файлы с разделителями (TXT), в которых для разделения полей текста обычно используется знак табуляции (знак ASCII с кодом 009);

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

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

Примечание: Можно импортировать и экспортировать до 1 048 576 строк и 16 384 столбцов.

Импорт текстового файла путем его открытия в Excel

Текстовый файл, созданный в другой программе, можно открыть как книгу Excel с помощью команды Открыть. При открытии текстового файла в Excel его формат не изменяется — это можно заметить по заголовку окна Excel, где имя указывается с расширением текстового файла (например, TXT или CSV).

Перейдите в файл > Открыть и перейдите к расположению, содержащему текстовый файл.

Выберите текстовые файлы в раскрывающемся списке Тип файла в диалоговом окне Открытие .

Найдите нужный файл и дважды щелкните его.

Если это текстовый файл (с расширением ТХТ), запустится мастер импорта текста. Окончив работу с мастером, нажмите кнопку Готово, чтобы завершить импорт. Дополнительные сведения о разделителях и дополнительных параметрах можно найти в мастере импорта текста .

Если файл имеет расширение CSV, Excel автоматически откроет его и отобразит данные в новой книге.

Примечание: При открытии CSV-файлов для определения способа импорта каждого столбца используются заданные по умолчанию параметры форматирования данных. Если вы хотите применить другие параметры, используйте мастер импорта текста. Например, мастер потребуется, если столбец данных в CSV-файле имеет формат МДГ, а в Excel по умолчанию используется формат ГМД или необходимо преобразовать в текст столбец чисел, содержащих начальные нули, чтобы сохранить их. Чтобы принудительно запустить мастер импорта текста в Excel, вы можете изменить расширение имени файла с CSV на. txt, прежде чем открыть его, или импортировать текстовый файл, подключив его (Дополнительные сведения можно найти в разделе ниже).

Импорт текстового файла путем подключения к нему (Power Query)

Вы можете импортировать данные из текстового файла на существующий лист.

На вкладке » данные » в группе » Получение & данных преобразования » выберите из текста или CSV.

В диалоговом окне Импорт данных найдите и дважды щелкните текстовый файл, который вы хотите импортировать, и нажмите кнопку Импорт.

В диалоговом окне Предварительный просмотр есть несколько вариантов:

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

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

Выберите пункт преобразовать данные , если вы хотите загрузить данные в Power Query, и измените его перед переводом в Excel.

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

Экспорт данных в текстовый файл путем его сохранения

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

Выберите Файл > Сохранить как.

Нажмите кнопку Обзор.

В диалоговом окне Сохранить как в поле тип файла выберите текстовый формат для листа. Например, выберите пункт текст (разделитель — табуляция) или CSV (разделители — запятые).

Примечание: Различные форматы текстовых файлов поддерживают разные возможности. Дополнительные сведения см. в статье Поддерживаемые Excel форматы файлов.

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

Откроется диалоговое окно с напоминанием о том, что в текстовом файле будет сохранен только текущий лист. Если вы хотите сохранить именно текущий лист, нажмите кнопку ОК. Другие листы можно сохранить в отдельных текстовых файлах, повторив эту процедуру для каждого из них.

Кроме того, вы можете увидеть оповещение на ленте, в котором некоторые функции могут быть потеряны при сохранении книги в формате CSV.

Дополнительные сведения о сохранении файлов в других форматах см. в статье Сохранение книги в другом формате файла.

Импорт текстового файла путем подключения к нему

Вы можете импортировать данные из текстового файла на существующий лист.

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

На вкладке Данные в группе Получение внешних данных нажмите Из текста.

В диалоговом окне Импорт данных найдите и дважды щелкните текстовый файл, который вы хотите импортировать, и нажмите кнопку Импорт.

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

В диалоговом окне Импорт данных:

В группе Куда следует поместить данные? выполните одно из следующих действий:

Чтобы поместить данные в выбранные ячейки, щелкните На существующий лист.

Чтобы поместить данные в верхний левый угол нового листа, выберите вариант На новый лист.

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

Нажмите кнопку ОК.

Excel добавит диапазон внешних данных в указанное место.

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

Экспорт данных в текстовый файл путем его сохранения

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

Выберите Файл > Сохранить как.

Откроется диалоговое окно Сохранение документа.

В поле Тип файла выберите формат текстового файла для листа.

Например, выберите Текстовые файлы (с разделителями табуляции) или CSV (разделители — запятые).

Примечание: Различные форматы текстовых файлов поддерживают разные возможности. Дополнительные сведения см. в статье Поддерживаемые Excel форматы файлов.

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

Откроется диалоговое окно с напоминанием о том, что в текстовом файле будет сохранен только текущий лист. Если вы хотите сохранить именно текущий лист, нажмите кнопку ОК. Другие листы можно сохранить в отдельных текстовых файлах, повторив эту процедуру для каждого из них.

Откроется второе диалоговое окно с напоминанием о том, что сохраняемый лист может содержать возможности, которые не поддерживаются текстовыми форматами файлов. Если в новом текстовом файле нужно сохранить только данные листа, нажмите кнопку Да. Если вы не уверены и хотите получить дополнительные сведения о том, какие возможности Excel не поддерживаются форматами текстовых файлов, нажмите кнопку Справка.

Дополнительные сведения о сохранении файлов в других форматах см. в статье Сохранение книги в другом формате файла.

Способ изменения разделителя при импорте зависит от того, как вы импортируете текст.

Если вы используете Get & преобразования данных > из текста или CSV, после того как вы выберете текстовый файл и нажмите кнопку Импорт, выберите нужный символ из списка в разделе Разделитель. Вы можете сразу увидеть эффект нового выбора в предварительном просмотре данных, чтобы убедиться, что вы сделаете нужный вариант, прежде чем продолжить.

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

Дополнительные сведения о разделителях и дополнительных параметрах можно найти в мастере импорта текста .

При сохранении книги в виде CSV-файла разделитель элементов списка по умолчанию (разделитель) является запятыми. Вы можете изменить его на другой знак разделителя с помощью параметров области Windows.

В Microsoft Windows 10 щелкните правой кнопкой мыши кнопку Пуск и выберите пункт Параметры.

Выберите пункт время & язык, а затем на левой панели выберите пункт регион .

На главной панели в разделе региональные параметрывыберите пункт Дополнительные параметры даты, времени и региональных параметров.

В разделе регионщелкните изменить формат даты, времени или чисел.

В диалоговом окне регион на вкладке Формат нажмите кнопку Дополнительные параметры.

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

Дважды нажмите кнопку ОК.

Нажмите кнопку Пуск и выберите пункт Панель управления.

В разделе часы, язык и регионщелкните изменить форматы даты, времени или чисел.

В диалоговом окне регион на вкладке Формат нажмите кнопку Дополнительные параметры.

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

Дважды нажмите кнопку ОК.

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

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

САЙТ ПОД КЛЮЧ!

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

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

Прежде, чем мы двинемся дальше, пожалуйста, посмотрите на снимок экрана ниже, на нем показан исходный файл 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 (Считать последовательные разделители одним), чтобы избежать появления пустых ячеек.

    1. Выберите, куда вставлять импортированные данные, на существующий или на новый лист, и нажмите ОК, чтобы завершить импорт файла 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, и все данные попадают в первый столбец.

    Причина: Корень проблемы кроется в том, что в Ваших региональных и языковых настройках Windows и в Вашем файле CSV установлены различные разделители. В Северной Америке и некоторых других странах разделителем полей списка по умолчанию является запятая. В то время как в Европейских странах запятая используется как разделитель десятичных разрядов, а разделителем полей списка является точка с запятой.

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

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

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

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

  • Измените расширение с .csv на .txt. Открытие файла .txt в Excel приведёт к запуску Мастера импорта текстов, и Вы сможете выбрать нужный разделитель.
  • Откройте файл CSV с точкой с запятой в качестве разделителя при помощи VBA.
  • Замечание: Все показанные решения изменяют разделитель только для данного файла CSV. Если Вы хотите раз и навсегда изменить разделитель, заданный по умолчанию, то Вам подойдёт следующее решение.

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

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

    1. Дважды нажмите ОК, чтобы закрыть диалоговые окна – всё готово! С этого момента 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 (Дата) и выберите подходящий формат даты в выпадающем списке.

    Данная статья полностью позаимствована у Антона
    Андронова с сайта Microsoft Excel для начинающих
    Спасибо ему за подробное и внятное руководство!

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

    Я хочу написать сценарий Python, который читает в электронной таблице Excel и сохраняет некоторые из своих листов в виде CSV-файлов.

    Как я могу это сделать?

    Я нашел сторонние модули для чтения и записи файлов Excel из Python, но, насколько я могу судить, они могут сохранять файлы только в Excel (т. е. *.формат xls. Если я ошибаюсь здесь, некоторые примеры кода, показывающие, как сделать то, что я пытаюсь сделать с этими модулями, будут оценены.

    Я также наткнулся на одно решение, которое я не совсем понимаю, но, кажется, специфично для Windows, и поэтому не помогло бы мне в любом случае, так как я хочу сделать это в Unix. Во всяком случае, мне не ясно, что это решение может быть расширено, чтобы сделать то, что я хочу сделать, даже под Windows.

    Используйте модуль xlrd or openpyxl для чтения документов xls или xlsx соответственно и csv модуль для записи.

    Кроме того , при использовании Jython можно использовать библиотеку Apache POI для чтения .xls или .xlsx , и родной модуль CSV будет по-прежнему доступен.

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

    1. Откройте книгу xls
    2. Ссылка на первую электронную таблицу
    3. Открыть в двоичном формате записать целевой csv-файл
    4. Создание объекта записи csv по умолчанию
    5. Цикл по всем строкам первой электронной таблицы
    6. Сброс строк в csv

    Конвертер XLS (EXCEL) в CSV

    Сконвертируйте ваши xls-файлы в csv онлайн и бесплатно

    • Image
    • Document
    • Ebook
    • Audio
    • Archive
    • Video
    • Presentation
    • Font
    • Vector
    • CAD
    • abc
    • abw
    • csv
    • dbk
    • djvu
    • dng
    • doc
    • docm
    • docx
    • erf
    • ebm
    • ewm
    • emw
    • gzip
    • kwd
    • odt
    • oxps
    • ppt
    • pptx
    • pdf
    • rtf
    • rar
    • txt
    • wps
    • xls
    • xlsx
    • zip
    • Image
    • Document
    • Ebook
    • Audio
    • Archive
    • Video
    • Presentation
    • Font
    • Vector
    • CAD
    • abc
    • abw
    • csv
    • dbk
    • djvu
    • dng
    • doc
    • docm
    • docx
    • erf
    • ebm
    • ewm
    • emw
    • gzip
    • kwd
    • odt
    • oxps
    • ppt
    • pptx
    • pdf
    • rtf
    • rar
    • txt
    • wps
    • xls
    • xlsx
    • zip

    Лист Microsoft Excel (97-2003)

    Формат XLS используется для описания документов программы Microsoft Excel. Этот файл представляет собой электронную таблицу. Все данные в документе распределены по ячейкам и хранятся в них. Каждая ячейка имеет уникальный адрес, обозначаемый буквами и арабскими цифрами. Ячейка может содержать неизменяемые данные и данные в виде формул, которые связывают несколько ячеек.

    Значения, разделенные запятыми

    Текстовый формат, используется для представления табличных данных. Каждая строка файла является одной строкой таблицы. Значения отдельных колонок разделяются разделительным символом, чаще всего запятой. Однако, допускается использование иных символов в качестве разделителя.

    Экспорт данных листа в формате CSV (расширенный)

    AndreTM

    Дата: Среда, 22.05.2013, 03:32 |
    Сообщение № 1

    Группа: Друзья

    Ранг: Старожил

    Сообщений: 1762


    Репутация:

    498

    ±

    Замечаний:
    0% ±


    2003 & 2010

    В последнее время я уже пару раз наткнулся на то, что народу требуется экспортировать данные с листа в обычный текст с разделителями. При этом беглое изучение поисковиков привело к неутешительным выводам — ни один из стандартных форматов экспорта Excel не решает полностью проблему совместимости с «принимающей стороной». И если от проблем с представлением даты или логических значений, ошибок — ещё можно справиться предварительной обработкой листа, то «задвоение кавычек» нерешаемо (стандартными методами) в принципе…
    Поэтому я, недолго думая, настрадал собственную процедуру для экспорта, которую и представляю.
    [vba]

    Код

    Option Explicit

    Sub ExportSheet2CSV(Optional ByVal cFileName = «», _
       Optional ByVal cDelimiter = «,», Optional ByVal cTextQualifier = «», Optional ByVal cDecimalSeparator = «.», _
       Optional ByVal nStartRow = 1, Optional ByVal nStartCol = 1, _
       Optional ByVal vCutHeader As Variant = True, _
       Optional ByVal cFormatDateTime = «YYYY-MM-DD hh:mm:ss», Optional ByVal cTypeQualifier = «»)

    ‘ Параметры для сохраняемого файла
    ‘    cFileName = «» ‘ имя файла экспорта, по умолчанию — имя активного листа
    ‘    cDelimiter = «,» ‘ разделитель полей
    ‘    cTextQualifier = «» ‘ квалификатор символьных полей, по умолчанию экв. xlTextQualifierNone для совместимости с SQL
    ‘    cDecimalSeparator = «.» ‘ символ десятичной точки, по умолчанию экв. «dot» для совместимости
    ‘    nStartRow = 1 ‘ Номер строки на листе — первая строка, с которой выпоняется экспорт (включая заголовок, если есть)
    ‘    nStartCol = 1 ‘ Номер столбца на листе — первый столбец , с которого выполняется экспорт
    ‘    vCutHeader = True ‘ Наличие строки заголовка (подписей столбцов) и его удаление:
    ‘       =True=-1 — заголовок считается равным 1 строке, при этом из результирующего файла заголовок исключается
    ‘       <0 — размер заголовка в строках, исключается из результата
    ‘       >0 — размер заголовка в строках, не исключается из результата (но записывается «как есть», без преобразований)
    ‘       =False=0 — заголовок отсутствует
    ‘    cFormatdateTime = «YYYY-MM-DD hh:mm:ss» ‘ формат даты/времени, по умолчанию выставлен в ISO8601 для совместимости
    ‘    cTypeQualifier = «#» ‘ квалификатор логических значений и даты, по умолчанию — пустаое значение

                      Dim wb As Workbook, newwb As Workbook, sh As Worksheet, newsh As Worksheet
          Dim nLastRow As Long, nLastCol As Long, i As Long, j As Long
          Dim cOut As String, cValue

                  Application.ScreenUpdating = False

                  Set wb = ActiveWorkbook
          Set sh = ActiveSheet
          Set newwb = Workbooks.Add
          Set newsh = newwb.Sheets(1)

             ‘ Установки границ экспортируемой таблицы
    ‘ Правая-нижняя граница выставляется по используемой области листа
          nLastRow = sh.UsedRange.Row + sh.UsedRange.Rows.Count — 1
          nLastCol = sh.UsedRange.Column + sh.UsedRange.Columns.Count — 1
    ‘ Левая-верхняя граница подтягивается к началу заполнения на листе
          nStartRow = Application.WorksheetFunction.Max(nStartRow, sh.UsedRange.Row)
          nStartCol = Application.WorksheetFunction.Max(nStartCol, sh.UsedRange.Column)
    ‘ ВНИМАНИЕ — заголовок будет отсчитан от нового левого-верхнего положения
    ‘ Анализ заголовка
          vCutHeader = vCutHeader + 0
          If vCutHeader < 0 Then nStartRow = nStartRow — vCutHeader
    ‘ Сборка данных
          For i = nStartRow To nLastRow
              vCutHeader = vCutHeader — 1
              cOut = «»
              For j = nStartCol To nLastCol
                  cValue = sh.Cells(i, j)
                  If vCutHeader < 0 Then ‘ не строка заголовка
                      Select Case VarType(cValue)
                      Case vbString
                          cValue = cTextQualifier & cValue & cTextQualifier
                      Case vbInteger, vbLong, vbByte
                          cValue = CStr(cValue)
                      Case vbSingle, vbDouble, vbCurrency, vbDecimal
                          cValue = Replace(CStr(cValue), Application.International(xlDecimalSeparator), cDecimalSeparator)
                      Case vbBoolean
                          cValue = cTypeQualifier & CStr(cValue) & cTypeQualifier
                      Case vbDate
                          cValue = cTypeQualifier & Format(cValue, cFormatDateTime) & cTypeQualifier
                      Case Else
                      ‘ Все значения ошибок
                          cValue = «»
                      End Select
                  End If
                  cOut = cOut & cDelimiter & CStr(cValue)
              Next
              newsh.Cells(i — nStartRow + 1, 1) = Mid(cOut, 2)
          Next

                  Set newsh = Nothing

             ‘ Сохранение файла
          If Len(cFileName) = 0 Then cFileName = sh.Name & «.csv»
          If InStr(1, cFileName, «») = 0 Then cFileName = wb.Path & «» & cFileName

                  Application.DisplayAlerts = False
          newwb.SaveAs FileName:=(cFileName), FileFormat:=xlTextPrinter, CreateBackup:=False, local:=True
          Application.DisplayAlerts = True
          newwb.Close savechanges:=False
    ‘ *
          Set newwb = Nothing
          wb.Activate

                  Application.ScreenUpdating = True

                  Set sh = Nothing
          Set wb = Nothing

             End Sub

    [/vba]

    А также файл с примерами использования


    Skype: andre.tm.007
    Donate: Qiwi: 9517375010

    Сообщение отредактировал AndreTMСреда, 22.05.2013, 03:34

     

    Ответить

    AndreTM

    Дата: Среда, 29.05.2013, 19:02 |
    Сообщение № 2

    Группа: Друзья

    Ранг: Старожил

    Сообщений: 1762


    Репутация:

    498

    ±

    Замечаний:
    0% ±


    2003 & 2010

    В экспорте обнаружились проблемы… Строки длиной выше 255 символов, естественно, выводились коряво.
    Так что я отказался от использования средств Excel’я вообще (в части записи выходного файла), и переписал код:

    К сообщению приложен файл:

    2877211.xls
    (50.5 Kb)


    Skype: andre.tm.007
    Donate: Qiwi: 9517375010

     

    Ответить

    Staniiislav

    Дата: Среда, 17.07.2013, 09:44 |
    Сообщение № 3

    Доброго времени суток всем
    AndreTM, подскажите пожалуйста процедуру которая будет теперь обратно собирать данные в эксель

     

    Ответить

    AndreTM

    Дата: Среда, 17.07.2013, 10:08 |
    Сообщение № 4

    Группа: Друзья

    Ранг: Старожил

    Сообщений: 1762


    Репутация:

    498

    ±

    Замечаний:
    0% ±


    2003 & 2010

    процедуру которая будет теперь обратно собирать данные в эксель

    Ну, как бы сам Excel и будет собирать, если с его помощью просто открыть полученный файл… smile

    С другой стороны, процедурка делалась для того, чтобы можно было покрутить форматы экспорта. Например, при обмене с SQL-серверами.


    Skype: andre.tm.007
    Donate: Qiwi: 9517375010

     

    Ответить

    Staniiislav

    Дата: Среда, 17.07.2013, 12:29 |
    Сообщение № 5

    Понял, спасибо

     

    Ответить

    raf77

    Дата: Среда, 23.04.2014, 17:20 |
    Сообщение № 6

    Группа: Пользователи

    Ранг: Прохожий

    Сообщений: 2


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2003

    AndreTM, нужна помощь в обработке ексель таблицы для перевода его в фаил блокнота

     

    Ответить

    raf77

    Дата: Среда, 23.04.2014, 17:20 |
    Сообщение № 7

    Группа: Пользователи

    Ранг: Прохожий

    Сообщений: 2


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2003

    напишите мне на адрес Удалено администрацией. Нарушение Правил форума

     

    Ответить

    CSV (Comma Separated Values) – распространённый формат для хранения табличных данных (числовых и текстовых) в виде простого текста. Этот формат файлов популярен и живуч благодаря тому, что огромное количество программ и приложений понимают CSV, хотя бы как альтернативный вариант файлового формата для импорта / экспорта. Более того, формат CSV позволяет пользователю заглянуть в файл и немедленно найти проблему с данными, если таковая имеется, изменить разделитель CSV, правила цитирования и так далее. Это возможно потому, что CSV – это простой текст, и даже не очень опытный пользователь, сможет легко его понять без специальной подготовки.

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

    • Преобразуем данные из формата Excel в CSV
    • Экспортируем из Excel в формат CSV UTF-8 или UTF-16
    • Другие способы преобразования из формата Excel в CSV (сохраняя специальные символы)

    Содержание

    1. Как преобразовать файл Excel в CSV
    2. Экспортируем из Excel в CSV с кодировкой UTF-8 или UTF-16
    3. Как преобразовать файл Excel в CSV UTF-8
    4. Как преобразовать файл Excel в CSV UTF-16
    5. Другие способы преобразования файлов Excel в CSV
    6. Преобразуем файл Excel в CSV при помощи Таблиц Google
    7. Сохраняем файл .xlsx как .xls и затем преобразуем в файл CSV
    8. Сохраняем файл Excel как CSV при помощи OpenOffice

    Как преобразовать файл Excel в CSV

    Если требуется экспортировать файл Excel в какое-либо другое приложение, например, в адресную книгу Outlook или в базу данных Access, предварительно преобразуйте лист Excel в файл CSV, а затем импортируйте файл .csv в другое приложение. Ниже дано пошаговое руководство, как экспортировать рабочую книгу Excel в формат CSV при помощи инструмента Excel – «Сохранить как».

    1. В рабочей книге Excel откройте вкладку Файл (File) и нажмите Сохранить как (Save as). Кроме этого, диалоговое окно Сохранение документа (Save as) можно открыть, нажав клавишу F12.Преобразование Excel в CSV
    2. В поле Тип файла (Save as type) выберите CSV (разделители – запятые) (CSV (Comma delimited)).Преобразование Excel в CSVКроме CSV (разделители – запятые), доступны несколько других вариантов формата CSV:
      • CSV (разделители – запятые) (CSV (Comma delimited)). Этот формат хранит данные Excel, как текстовый файл с разделителями запятыми, и может быть использован в другом приложении Windows и в другой версии операционной системы Windows.
      • CSV (Macintosh). Этот формат сохраняет книгу Excel, как файл с разделителями запятыми для использования в операционной системе Mac.
      • CSV (MS-DOS). Сохраняет книгу Excel, как файл с разделителями запятыми для использования в операционной системе MS-DOS.
      • Текст Юникод (Unicode Text (*txt)). Этот стандарт поддерживается почти во всех существующих операционных системах, в том числе в Windows, Macintosh, Linux и Solaris Unix. Он поддерживает символы почти всех современных и даже некоторых древних языков. Поэтому, если книга Excel содержит данные на иностранных языках, то рекомендую сначала сохранить её в формате Текст Юникод (Unicode Text (*txt)), а затем преобразовать в CSV, как описано далее в разделе Экспортируем из Excel в формат CSV UTF-8 или UTF-16.

    Замечание: Все упомянутые форматы сохраняют только активный лист Excel.

    1. Выберите папку для сохранения файла в формате CSV и нажмите Сохранить (Save).После нажатия Сохранить (Save) появятся два диалоговых окна. Не переживайте, эти сообщения не говорят об ошибке, так и должно быть.
    2. Первое диалоговое окно напоминает о том, что В файле выбранного типа может быть сохранён только текущий лист (The selected file type does not support workbooks that contain multiple sheets). Чтобы сохранить только текущий лист, достаточно нажать ОК.Преобразование Excel в CSVЕсли нужно сохранить все листы книги, то нажмите Отмена (Cancel) и сохраните все листы книги по-отдельности с соответствующими именами файлов, или можете выбрать для сохранения другой тип файла, поддерживающий несколько страниц.
    3. После нажатия ОК в первом диалоговом окне, появится второе, предупреждающее о том, что некоторые возможности станут недоступны, так как не поддерживаются форматом CSV. Так и должно быть, поэтому просто жмите Да (Yes).Преобразование Excel в CSV

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

    Экспортируем из Excel в CSV с кодировкой UTF-8 или UTF-16

    Если на листе Excel содержатся какие-либо специальные или иностранные символы (тильда, ударение и подобные) или иероглифы, то преобразование листа Excel в CSV описанным выше способом не сработает.

    Дело в том, что команда Сохранить как > CSV (Save as > CSV) исказит все символы, кроме ASCII (American Standard Code for Information Interchange). И если на листе Excel есть парные кавычки или длинные тире (перенесённые в Excel, например, из документа Word при копировании / вставке текста) – такие символы также будут искромсаны.

    Простое решение – сохранить лист Excel как текстовый файл Unicode(.txt), и затем преобразовать его в CSV. Таким образом все символы, не входящие в ASCII, останутся в целости и сохранности.

    Прежде чем двинуться дальше, позвольте мне кратко пояснить главные отличия между кодировками UTF-8 и UTF-16, чтобы в каждом индивидуальном случае Вы могли выбрать подходящий формат:

    • UTF-8 – это более компактная кодировка, использующая для каждого символа от 1 до 4 байт. Чаще всего рекомендуется использовать этот формат, когда символы ASCII преобладают в файле, т.к. большинство таких символов требует 1 байт памяти. Ещё одно преимущество в том, что кодировка файла UTF-8, содержащего только символы ASCII, ничем не будет отличаться от такого же ASCII-файла.
    • UTF-16 использует от 2 до 4 байт для хранения каждого символа. Учтите, что не во всех случаях файл UTF-16 требует больше места в памяти, чем файл UTF-8. Например, японские символы занимают от 3 до 4 байт в UTF-8 и от 2 до 4 байт в UTF-16. Таким образом, есть смысл использовать UTF-16, если данные содержат азиатские символы, в том числе Японские, Китайские и Корейские. Существенный недостаток этой кодировки в том, что она не полностью совместима с ASCII-файлами и требуются специальные программы для отображения таких файлов. Помните об этом, если планируете импортировать получившиеся файлы из Excel куда-то ещё.

    Как преобразовать файл Excel в CSV UTF-8

    Предположим, у нас есть лист Excel с иностранными символами, в нашем примере – это японские имена.

    Преобразование Excel в CSV

    Чтобы экспортировать этот лист Excel в файл CSV, сохранив при этом все иероглифы, сделаем следующее:

    1. В Excel откройте вкладку Файл (File) и нажмите Сохранить как (Save as).
    2. Введите имя файла, в поле Тип файла (Save as type) выберите Текст Юникод (Unicode Text (*.txt)) и нажмите Сохранить (Save).Преобразование Excel в CSV
    3. Откройте созданный файл в любом стандартном текстовом редакторе, например, в Блокноте.

    Замечание: Не все простые текстовые редакторы полностью поддерживают символы Юникод, поэтому некоторые из них могут отображаться как прямоугольники. В большинстве случаев, это никак не повлияет на итоговый файл, и можно просто не обращать на это внимание или выбрать более продвинутый редактор, например, Notepad++.

    1. Так как в нашем текстовом Юникод файле в качестве разделителей используется символ табуляции, а мы хотим преобразовать его в CSV (разделители – запятые), то необходимо заменить символы табуляции на запятые.

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

    1. Если всё же нужен файл CSV (разделители – запятые), то выполните в Блокноте следующие действия:

      В Блокноте результат будет приблизительно вот такой:

      Преобразование Excel в CSV

    2. Кликните Файл > Сохранить как (File > Save as), введите имя для файла и в выпадающем списке Кодировка (Encoding) выберите UTF-8. Затем нажмите кнопку Сохранить (Save).Преобразование Excel в CSV
    3. Запустите Проводник Windows и измените расширение файла с .txt на .csv.По-другому изменить расширение .txt на .csv можно непосредственно в Блокноте. Для этого в диалоговом окне Сохранить как (Save as) в поле Тип файла (Save as type) выберите вариант Все файлы (All files), а к имени файла в соответствующем поле добавьте «.csv», как показано на рисунке ниже.Преобразование Excel в CSV
    4. Откройте файл CSV в Excel, для этого на вкладке Файл (File) нажмите Открыть > Текстовые файлы (Open > Text files) и проверьте в порядке ли данные.

    Замечание: Если Ваш файл предназначен для использования за пределами Excel и формат UTF-8 является обязательным требованием, то не совершайте на листе никаких изменений и не сохраняйте его снова в Excel, поскольку это может привести к проблемам с чтением кодировки. Если какая-то часть данных не отображается в Excel, откройте тот же файл в Блокноте и в нём внесите исправления в данные. Не забудьте снова сохранить файл в формате UTF-8.

    Как преобразовать файл Excel в CSV UTF-16

    Экспортировать в файл CSV UTF-16 намного быстрее и проще, чем в UTF-8. Дело в том, что Excel автоматически применяет формат UTF-16 при сохранении файла как Текст Юникод (Unicode Text).

    Для этого сохраняем файл при помощи инструмента Сохранить как (Save as) в Excel и затем в Проводнике Windows изменяем расширение созданного файла на .csv. Готово!

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

    Другие способы преобразования файлов Excel в CSV

    Описанные выше способы экспорта данных из Excel в CSV (UTF-8 и UTF-16) универсальны, т.е. подойдут для работы с любыми специальными символами и в любой версии Excel от 2003 до 2013.

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

    Преобразуем файл Excel в CSV при помощи Таблиц Google

    Как оказалось, можно очень просто преобразовать файл Excel в CSV при помощи Таблиц Google. При условии, что на Вашем компьютере уже установлен Google Drive, выполните следующие 5 простых шагов:

    1. В Google Drive нажмите кнопку Создать (Create) и выберите Таблица (Spreadsheet).
    2. В меню Файл (File) нажмите Импорт (Import).Преобразование Excel в CSV
    3. Кликните Загрузка (Upload) и выберите файл Excel для загрузки со своего компьютера.
    4. В диалоговом окне Импорт файла (Import file) выберите Заменить таблицу (Replace spreadsheet) и нажмите Импорт (Import).Преобразование Excel в CSV

    Совет: Если файл Excel относительно небольшой, то для экономии времени можно перенести из него данные в таблицу Google при помощи копирования / вставки.

    1. В меню Файл (File) нажмите Скачать как (Download as), выберите тип файла CSV – файл будет сохранён на компьютере.Преобразование Excel в CSV

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

    Сохраняем файл .xlsx как .xls и затем преобразуем в файл CSV

    Для этого способа не требуется каких-либо дополнительных комментариев, так как из названия уже всё ясно.

    Это решение я нашёл на одном из форумов, посвящённых Excel, уже не помню, на каком именно. Честно говоря, я никогда не использовал этот способ, но, по отзывам множества пользователей, некоторые специальные символы теряются, если сохранять непосредственно из .xlsx в .csv, но остаются, если сначала .xlsx сохранить как .xls, и затем как .csv, как мы делали в начале этой статьи.

    Так или иначе, попробуйте сами такой способ создания файлов CSV из Excel, и если получится, то это будет хорошая экономия времени.

    Сохраняем файл Excel как CSV при помощи OpenOffice

    OpenOffice – это пакет приложений с открытым исходным кодом, включает в себя приложение для работы с таблицами, которое отлично справляется с задачей экспорта данных из формата Excel в CSV. На самом деле, это приложение предоставляет доступ к большему числу параметров при преобразовании таблиц в файлы CSV (кодировка, разделители и так далее), чем Excel и Google Sheets вместе взятые.

    Просто открываем файл Excel в OpenOffice Calc, нажимаем Файл > Сохранить как (File > Save as) и выбираем тип файла Текст CSV (Text CSV).

    На следующем шаге предлагается выбрать значения параметров Кодировка (Character sets) и Разделитель поля (Field delimiter). Разумеется, если мы хотим создать файл CSV UTF-8 с запятыми в качестве разделителей, то выбираем UTF-8 и вписываем запятую (,) в соответствующих полях. Параметр Разделитель текста (Text delimiter) обычно оставляют без изменения – кавычки («). Далее нажимаем ОК.

    Преобразование Excel в CSV

    Таким же образом для быстрого и безболезненного преобразования из Excel в CSV можно использовать ещё одно приложение – LibreOffice. Согласитесь, было бы здорово, если бы Microsoft Excel предоставил возможность так же настраивать параметры при создании файлов CSV.

    В этой статье я рассказал об известных мне способах преобразования файлов Excel в CSV. Если Вам знакомы более эффективные методы экспорта из Excel в CSV, расскажите об этом в комментариях. Благодарю за внимание!

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

    Like this post? Please share to your friends:
  • Excel экспонента в число
  • Excel экранирование кавычек в формуле
  • Excel экономическая задача пример
  • Excel штриховка на ячейку
  • Excel шрифт при вставке