|    | 
     ▼初VBA さん: 
> 1.は読込できましたが、複数のCSV読込がわかりません? 
 
ほぼ出来ているようにも見えますが 
一応、コードを追加してみました(一部改) 
(テストはしてません。ごめんなさい) 
 
Sub test() 
Dim csvFile As String 
Dim ch As Integer 
Dim csvStr As String 
Dim str() As String 
Dim i As Integer 
Dim myLooP As Long   '追加 
Dim myDATA(1 To 24, 1 To 70) As String '変数に格納するデータ用 
 
 
csvFile = "C:\DataF\TEST.csv"  '今は固定 
'空いている番号を取得 
ch = FreeFile 
Open csvFile For Input As #ch 
i = 8 
Do While Not EOF(ch) 
  Line Input #ch, csvStr 
  'カンマ区切りで配列に格納 
  str = Split(csvStr, ",") 
  'セルのレンジを指定して、配列の値をセット長くなるので途中で区切ってる。 
'  With Worksheets("Sheet1") 
'    .Cells(i, 1).Value = str(1) 
'    .Cells(i, 2).Value = str(2) 
'    .Cells(i, 3).Value = str(3) 
'  End With 
'  With Worksheets("Sheet2") 
'    .Cells(i, 1).Value = str(11) 
'    .Cells(i, 2).Value = str(12) 
'    .Cells(i, 3).Value = str(13) 
'  End With 
  'ちょっと改良? 
  For myLooP = 1 To 30 
    Worksheets("Sheet1").Cells(i, myLooP) = str(myLooP - 1) 
    Worksheets("Sheet2").Cells(i, myLooP) = str(myLooP + 29) 
    If myLooP <= 10 Then 
      Worksheets("Sheet3").Cells(i, myLooP) = str(myLooP + 59) 
    End If 
  Next myLooP 
   
  i = i + 1 
Loop 
'ファイルクローズ 
Close #ch 
 
 
'==== 3番目のファイルを取込) ===== 
csvFile = "C:\DATA\A20090219.DD.csv" 
'空いている番号を取得 
ch = FreeFile 
Open csvFile For Input As #ch 
'i = 8   ’上の続きなので設定不要 
Do While Not EOF(ch) 
  '〜上と同じ処理〜 
Loop 
'ファイルクローズ 
Close #ch 
 
 
'==== 2番目のファイルを取込) ===== 
csvFile = "C:\DATA\A20090219.CC.csv" 
'空いている番号を取得 
ch = FreeFile 
Open csvFile For Input As #ch 
i = 1 
Do While Not EOF(ch) 
  Line Input #ch, csvStr 
  If i <= 24 Then   '一応 
    'カンマ区切りで配列に格納 
    str = Split(csvStr, ",") 
    For myLooP = 1 To 70 
      myDATA(i, myLooP) = str(myLooP - 1) 
    Next myLooP 
  End If 
  i = i + 1 
Loop 
'ファイルクローズ 
Close #ch 
 
End Sub 
 
 | 
     
    
   |