|    | 
     ▼kanabun さん: 
 
ありがとうございます。 
エラーが起こります。 
 
<初期省略> 
 
'ファイルを開く 
   io = FreeFile() 
   Open myText For Binary As io 
   ReDim buf(1 To LOF(io))  ←ここの部分でエラーが発生いたします。 
   Get #io, , buf   
 
 
申し訳ございません。 
私の知識不足で、下記VBAと求めたいCSVファイルをどのように結びつけたらいいのか分かりません。 
できることならば、シート1には結果のみ貼り付けたいです。 
他の作業はPC内で済ませたいと思っております。 
 
お願い致します。 
>▼お願いします さん: 
>こんばんは。 
> 
>>1.指定フォルダの更新日の新しいCSVファイルを取得 
>>2.このCSVファイルをTXTファイルで開き、EXCEL化 
>>  
>> ※列は4列、行は1000程度 
>> 
>>3.取得したいデータは、 
>> 4列目の最終行 
>> 
>>これをSheet1のどこでもいいので貼り付ける。 
>> 
>> 
>>1.の取得は分かりましたが、2.が分かりません。 
> 
>最終行の最終列だけ取得できればいいのなら、 手順 2. は不要なのでは? 
> 
>一例です。 
> Sub Test1() 
>  Dim myText As String 
>  '(1) 
>  myText = "指定フォルダの更新日の新しいCSVファイル" 
>   
>  '(2) 不要につき割愛 
>   
>  '(3) 最終行の最終列のあたい 
>  Dim io As Integer 
>  Dim buf() As Byte 
>  Dim j As Long 
>  Dim v 
>  Dim data 
>   'ファイルを開く 
>   io = FreeFile() 
>   Open myText For Binary As io 
>   ReDim buf(1 To LOF(io)) 
>   Get #io, , buf      '---全データを読み込む(Shift-JIS) 
>   Close io 
>   v = Split(StrConv(buf, vbUnicode), vbCrLf)'---Unicodeに変換後、 
>                      '改行コードで行に分割 
>   data = v(UBound(v) - 1)        '最終行データ 
>   j = InStrRev(data, ",")        'お尻からカンマを探す 
>   data = Mid$(data, j + 1)       '最後のカンマ以降のdata 
>   Worksheets("Sheet1").Range("A1").Value = data 'Sheetに貼り付ける 
>   
> End Sub 
 | 
     
    
   |