Як зберегти електронну таблицю excel як файл значень, розділених напівкрапкою?


31

Я запускаю програму excel і хотів би експортувати мій файл у формат .scsv (значення, розділені напівкрапкою) замість .csv. Чи можна це зробити?

пс. Я не можу робити .csv та шукати та замінювати коми напівколонами, оскільки поля вже містять коми.


Якщо ви відкриті для невеликого програмування, перетворювач може бути записаний досить легко мовою програмування Python, використовуючи вбудований csvмодуль, який спрощує читання файлів Excel .csv, а потім записує нові версії файлів, що мали щойно про будь-який роздільник, який ви бажаєте.
мартіно

Це залежить, чи є в записах коми чи ні.
AER

Відповіді:


20

Як щодо вкладки Tab Delimited та заміни вкладок напівколонами?

У програмі Excel: Файл -> Зберегти як -> у форматі виберіть "Текст з розділеним текстом (.txt)", а потім його збереження.

Відкрийте файл у блокноті та відкрийте вікно заміни. Оскільки ви не можете вкладати вкладку безпосередньо у це вікно, скопіюйте вкладку зі свого документа, а потім вставте її у поле Знайти та поставте свій; в коробку для заміни. Потім замініть всі.

Я припускаю, що це спрацює, оскільки дуже рідко є вкладки в документі excel.


Хоча ви також можете надати набір інструкцій, хоча вони є основними для більшості користувачів?
Канадський Люк ВІДНОВЛЕННЯ МОНІКА

Чи можна це зробити повністю в Excel, і якщо так, то як?
мартіно

Я не думаю, що це можна зробити повністю в Excel. Excel приховує форматування (вкладки), щоб ви не змогли їх замінити. Замінивши їх напівколонами, ви також не зможете відкрити excel (це була б просто одна гігантська клітина)
Роберт

Я припускаю, що використання регексу для заміни та розміщення \tспрацює
Яссін Хаджай,

Якщо у вашому файлі є спеціальні символи іншої мови (наприклад, грецької), схоже, це не працює, оскільки символи символів замінюються на "?"
Joos

8

Я не думаю, що ви можете встановити роздільник виводу безпосередньо в Excel, але (якщо припустити Windows) ви можете змінити роздільник списку ОС на ;- це зроблено в Regional Settings->Customize. Excel використовуватиме цей параметр, що виводить ваші файли csv.


5
Важлива примітка: якщо ви це зробите, всі програми Windows, які використовують інтернаціоналізовані бібліотеки Windows, будуть вважати це; є символом роздільника для всіх файлів CSV. Якщо це разове рішення, можливо, має більше сенсу зберегти звичайний файл CSV та скористатися редактором, щоб змінити коми на крапки з комою
Ісаак Рабінович

Ця зміна також вплине на відкриття файлів CSV в Excel. І як було сказано в коментарі вище, можливо, більше програм. Якщо ви хочете зробити більш сумісний файл CSV, поставте sep=;зверху файл CSV, після того як ви збережете файл, ви можете змінити Сепаратор списку назад на будь-який він.
папо

7

Використовуйте LibreOffice Calc (це безкоштовне завантаження та працює на всіх основних операційних системах).

Для збереження значень, розділених напівкрапкою:

  1. Відкрийте файл xlsx / csv
  2. Файл -> Зберегти як ...
  3. Виберіть "Фільтр CSV" як фільтр (має бути за замовчуванням, якщо ім'я файлу закінчується на .csv)
  4. Поставте галочку "Редагувати параметри фільтра" та натисніть Зберегти
  5. Коли він запитує підтвердження формату файлу, натисніть «Використовувати текстовий формат CSV»
  6. Змініть "Розмежувач поля" на крапку з двокрапкою (тут можна ввести що завгодно).
  7. Натисніть OK.

LO Calc правильно обробляє коми і напівколонки в значеннях комірок.


1
Дякую, добре працює. Це має бути прийнятою відповіддю.
Ортомала Локні

4

Якщо вам потрібен сценарій, вставте наступне в модуль.

Option Explicit
Sub export2scsv()
    Dim lastColumn As Integer
    Dim lastRow As Integer
    Dim strString As String
    Dim i As Integer, j As Integer

    lastColumn = ActiveSheet.UsedRange.Column - 1 + ActiveSheet.UsedRange.Columns.Count
    lastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row

    Open "output.scsv" For Output As #1

    For i = 1 To lastRow
        Cells(i, 1).Select
        strString = ""
        For j = 1 To lastColumn
            If j <> lastColumn Then
                strString = strString & Cells(i, j).Value & ";" ' Use semicolon instead of pipe.
            Else
                strString = strString & Cells(i, j).Value
            End If
        Next j
        Print #1, strString
    Next i

    Close #1
End Sub

4

Щоб змінити кому на крапку з комою як роздільник Excel за замовчуванням для CSV - перейдіть до регіону -> додаткові налаштування -> вкладка "Числа" -> роздільник списку та введіть; замість за замовчуванням,


3

Ви можете змінити роздільник глобально за допомогою налаштування формату.

Перейдіть до регіону та мови, відкрийте регіон, на форматах вкладок натисніть кнопку Додаткові налаштування, а на номерах вкладки змініть значення для роздільника списку:


Не просто публікуйте посилання на відповідь, включайте важливі дані у відповідь. Якщо цільова сторінка відходить, то відповідь марний. Крім того, хоча я не знавець Windows, це виглядає так само, як відповідь wmz від трьох років тому.
блм

0

1.> Змінити формат файлу на .CSV (крапкою з комою)

Для досягнення бажаного результату нам потрібно тимчасово змінити налаштування роздільника в параметрах Excel.

Перейдіть у файл -> Параметри -> Додатково -> Розділ редагування

Зніміть прапорець "Використовувати системні роздільники" і поставте кому в поле "Десятковий роздільник".

Тепер збережіть файл у форматі .CSV, і він буде збережений у форматі з роздільною комою з комою !!!


5
Взяте з сайту ashwaniashwin.wordpress.com/2013/04/19/… Зверніть увагу, що атрибуція обов'язкова.
Ар’ян

0

Якщо ваш список значень знаходиться у стовпці А, спробуйте це - клітинка B2 = A1 & ";" & A2 комірка B3 = B2 & ";" & A3 Скопіюйте комірку B3 в нижню частину списку. Якщо ви скопіюєте та вставте останню комірку у своєму списку у якості значень, у вас з'явиться ваш розділений двокрапкою список. Потім ви можете скопіювати це в Блокнот, Word чи куди завгодно.


0

Зробити це можна легко за 4 етапи за допомогою функції з'єднання Excel.

  1. У свій файл додайте стовпець символів з комою з комою, де ви б очікували, що вони потраплять у експорт .csv.

  2. Створіть новий стовпець наприкінці даних і в першому рядку скористайтеся =concatenate()функцією. Обов’язково виберіть усі комірки, які ви хочете відобразити у фінальному файлі. Ваша формула буде виглядати приблизно так=concatenate(A1,A2,A3...)

  3. Скопіюйте та вставте отриману формулу вниз через усі рядки даних.

  4. Виберіть увесь стовпчик формул і спеціальні вставки -> Значення в сусідній колонку. Тепер у вас всі дані розмежовані крапками з комою.

Нарешті, експортуйте у вибраний формат файлу. Якщо ви експортуєте це як .txt у Windows, ви можете просто змінити розширення файлу на .csv, оскільки обидва - це текстові формати.


-3

Я використовую простий спосіб: -

  1. Відкрийте файл csv (крапка з комою) за допомогою блокнота або блокнота ++.
  2. Знайдіть і замініть (Ctrl + H) від крапки з комою (;) до коми (,).
  3. Збережіть і закрийте файл.
  4. Тепер відкрийте файл модифікації за допомогою Ms-Excel.

Це працює лише в тому випадку, якщо жодна рядок не містить ";" або "," інакше це не призведе до того, що автор насправді хоче.
Рамхаунд

1
Це йде в неправильному напрямку. Питання задає питання про те, як створити файл значень, розділених комою; ця відповідь передбачає, що файл значень, розділених напівкрапкою, вже існує і описує, як створити файл CSV - неправильно, оскільки він не враховує ключове обмеження питання: а саме, що відомо , що дані містять роздільник .
G-Man каже: "Відновіть Моніку"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.