CSVファイルからデータをインポートするためにExcel2007/2010でVBAコードを作成しました。残念ながら、プログラムでファイルを開くと、データは特定の行のデータに対して2つの列(AとB)に分割されます。
CSVファイルを手動で開くと、すべてが正常に表示されます。
通常、CSVデータは次のようになります(ヘッダー行の例)。
TBWAKT; "TBWAKO"; "TBSAIS"; "TBSKU9"; "TBSMOD"; "TBLETT"; "TBKBNR"; "TBBEZ2"; "TBFAR2"; "TBSUGC
"; "TBSOGC"; "TBEINK"; "TBKBGR"; "TBKBGF"; "TBVKPE"; "TBVKPR"; "TBEKPE"; "TBAUAN
"; "TBFAAN"; "TBREAN"; "TBSTAN"; "TBRUAN"; "TBKPAG"; "TBERDT"; "TBDATV"; "TBDATB 「」
問題の原因となるデータには、テキストにコンマが含まれています。次に例を示します。
JEAN 5 POCHES EXTENSIBLE + 1,60M
コードは次のとおりです。
Private Sub OpenCSV(x As Integer, wkbDashboard As String, wkbCsvImport As String, wksDestination As Worksheet)
' Opens CSV and copies data to current workbook
Dim wkbCsvImportName As String
Dim r As Range
Workbooks(wkbDashboard).Activate
' Open and read CSV
Workbooks.Open Filename:=wkbCsvImport, Format:=xlDelimited, Delimiter:=";"
wkbCsvImportName = ActiveWorkbook.Name
問題のスクリーンショット。ファイルを開いた後、赤いものは列Bにあります。