返回列表 上一主題 發帖

[發問] EXCEL轉 TXT檔, 如何自動新增雙引號?

[發問] EXCEL轉 TXT檔, 如何自動新增雙引號?

本帖最後由 mistery 於 2019-6-6 19:12 編輯

'轉檔時將儲存格處理增加雙引號

Cells(i, j) = Chr(34) & CStr(Cells(i, j))

ActiveWorkbook.SaveAs Filename:= spath & "\Q.txt", FileFormat:=xlCSV, CreateBackup:=False

EXCEL內:LUCKY08   LUCKY09    (分列在兩個儲存格)      
轉到TXT檔後: """LUCKY08" ,  """LUCKY09"      (左邊三個雙引號,右邊一個雙引號)

怎麼做就是無法"正常"出現左右各一個雙引號 ???  
  
  請大師解惑

雙引號.png (11.53 KB)

雙引號.png

本帖最後由 n7822123 於 2019-6-6 23:08 編輯

回復 1# mistery


存成txt就不要用CSV存檔了,改存檔格式吧,試試看

ActiveWorkbook.SaveAs Filename:=spath & "\Q.txt", FileFormat:=xlTextPrinter, CreateBackup:=False
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

因為要求格式為  以 雙引號  框住 值   並用  逗號  隔開 
之所以不用 FileFormat:=xlTextPrinter   是因為就會變成用  空格  隔開

不過~~還是非常謝謝,我還是會再想想

TOP

回復 3# mistery


  用Replace 處理字串,把空格變成逗號,因為你沒給檔案,所以我也只能給建議
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP



試試
Sub test()
    Dim f As Integer, temp(1 To 3)
    f = FreeFile
    Open "c:\test.txt" For Output As #f
    For i = 1 To 5
        For j = 1 To 3
              temp(j) = Chr(34) & Cells(i, j) & Chr(34)
        Next j
        Print #f, Join(temp, ",")
    Next i
    Close #f
End Sub

TOP

        靜思自在 : 要用心,不要操心、煩心。
返回列表 上一主題