|
宜しくお願いします。
先ず過去の回答で下記のマクロ、とても参考になりました。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=28796;id=excel
上記の内容と私の違うところは
1、ファイル名
050301rog.txt、050302rog.txtのようにyymmddrog.txtで毎日追加されます。
2、テキストファイル内に日付がありません。
過去の事例ではtxtの1列目に日付がありますが、私のは無いです。
日付はファイル名から取得します。
過去の事例→ 20050901,1001,0,0,1,003,1800
そこで下記のように改良して見ましたが「型が一致しません」表示します。
どうかアドバイスをお願い致します。
dim filedate As Variant
For i = 1 To UBound(vntFileNames)
'指定されたファイルをOpen
dfn = FreeFile
Open vntFileNames(i) For Input As dfn
'ファイルから日付を取得
Do Until EOF(dfn)
'ファイルから1行読み込み
Line Input #dfn, strBuff
'フィールドに分割
vntField = Split(strBuff, ",", , vbBinaryCompare)
'「20050731」形式の日付をシリアル値に変換
filedate = CLng(DateValue(Left(vntFileNames(i), 2) _
& "/" & Mid(vntFileNames(i), 3, 2) _
& "/" & Mid(vntFileNames(i), 5, 2)))
'日付を探索
lngRow = GetDateColumn(filedate, rngDate, _
rngResult.Offset(, clngTop)) + clngTop
|
|