Как да запиша csv от ексел без да се слагат автоматични кавички "" отпред?

Microsoft Excel

Привет! Правя файл само в колона А от типа 111,222 и го записвам като comma delimited за използване в друг софтуер. Проблемът е, че отворен в текстов редактор файлът винаги излиза във вида "111,222", което обърква някои продукти с command line interface, ГИС програми, Python и и др. Благодаря

Здравей, Симеон.

Ако в колона А имаш записи от вида, 111,222 и ако ти трябват точно така 111,222 в csv вариант, защото не се пробваш дирктно да ги запишеш като .txt файл.

Цялата работа в момента най-вероятно става заради регионалните настройки, ако са на Български и десетичен рзделител е приет запетая и си задал на Excel да използва този сепаратор, би следвало всичко да е нормлано.

Последен вариант, който преди малко пробвах е:

Sub Export()
'updateby Extendoffice 20160530
    Dim xRg As Range
    Dim xRow As Range
    Dim xCell As Range
    Dim xStr As String
    Dim xTxt As String
    Dim xName As Variant
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
    Set xRg = Application.InputBox("Please select data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    xName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
    Open xName For Output As #1
    For Each xRow In xRg.Rows
        xStr = ""
        For Each xCell In xRow.Cells
            xStr = xStr & xCell.Value & Chr(9)
        Next
        While Right(xStr, 1) = Chr(9)
            xStr = Left(xStr, Len(xStr) - 1)
        Wend
        Print #1, xStr
    Next
    Close #1
    If Err = 0 Then MsgBox "The file has saved to: " & xName, vbInformation, "Kutools for Excel"
End Sub

работи безупречно. Принципа му на работа е както при всеки друг VBA код.

Ако мога да те помоля да драснеш един ред, кое е проработило при теб.

Здрасти, пробвах различните варианти. Аз искам запетаята да ми е разделител на групите от данни, а за десетичен използвам точка. Без значение от останалите настройки, Екел записва в csv с кавички. Не намерих никъде опция за премахване на кавичките от двете страни, но очевидно само най-новия Ексел прави това. Предполагам, че са му зададени някакви default настройки. Отваряйки файла в .txt редактор те си се виждат "A,B". На практика реших проблема като просто си отворих таблицата в стар Ексел (2003 мисля) :) Поздрави и благодаря.

Дори и VBA кода ли не помогна?

Да, изпълних VBA кода в новата версия и работи по очаквания начин. Експортвам си с него. Благодаря! Все пак по - user friendly варианта save as csv винаги слага кавичките отстрани, което е странно .


Вашият отговор

Запиши се в Аула

или
Вашият имейл е защитен при нас.