シートに設置したボタンをクリックすると、シート内のセルに入力されている内容をCSVとして保存するマクロを組みました。
VBA
1Dim ws As Worksheet 2 Set ws = Worksheets("sheet1") 3 4 Dim csvFile As String 5 csvFile = "保存先ディレクトリ¥出力.csv" 6 7 Open csvFile For Output As #1 8 9 Dim i As Long, j As Long 10 i = 1 11 12 Do While ws.Cells(i, 1).Value <> "" 13 14 j = 1 15 Do While ws.Cells(i, j + 1).Value <> "" 16 17 Print #1, ws.Cells(i, j).Value & ","; 18 j = j + 1 19 20 Loop 21 22 Print #1, ws.Cells(i, j).Value & vbCr; 23 i = i + 1 24 25 Loop 26 27 Close #1
出力されたcsvをエクセルで開いて確認すると「01-1」という文字列が勝手に日付に変換されていたり、「01」「02」といった文字列が「1」「2」に変換されてしまいます。
メモ帳で開いて確認すると、「01-1」という文字列は日付に変換されずに正常に表示されるのですが、「01」「02」といった文字列は相変わらず「1」「2」に変換されてしまいます。
どうすれば勝手な変換・変更を止められますか
win10 64bit
excel 2013 64bit
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。