|
▼Hirofumi さん:
ありがとうございます。
初回のみ日付を入れれば問題なく動作はします。
初回の日付が抜けていると下記エラーになるため
リセットをかけて再施行になります。
「アプリケーション定義またはオブジェクト定義のエラーです。」
Set rngDate = .Offset(, 1).Resize(, lngCol)
このエラーの回避方法で現在躓いています。
「該当する日付が見当たりません」などmsgboxの表示を試していますが
なかなか上手くいかない次第です。
>>いいえ元ファイルに列見出しは無いです。
>>一つ教えて頂きたいのですが
>>If VarType(vntField) = vbArray + vbVariant Then
>>はどのような意味になるのでしょうか?
>>
>>
>> '日付の有る範囲を取得
>> If lngCol = 0 Then
>> '指定されたファイルをOpen
>> '日付の列が1つも無い場合後の処理が面倒なので
>> '先にファイル先頭の日付を入れて置く
>> dfn = FreeFile
>> Open vntFileName For Input As dfn
>> If Not EOF(dfn) Then
>> 'ファイルから1行読み込み
>> Line Input #dfn, strBuff
>> 'フィールドに分割
>> vntField = Split(strBuff, ",", , vbBinaryCompare)
>> End If
>> Close #dfn
>> If VarType(vntField) = vbArray + vbVariant Then
>> 'ファイルから取得した日付書き込み
>> .Offset(, 1).Value = vntField(0)
>> lngCol = 1
>> Else
>> blnWayOut = True
>> GoTo WayOut
>> End If
>> End If
>
>「If VarType(vntField) = vbArray + vbVariant Then」
>此れは、vntFieldの変数が、Variant型の配列で有るか、否かを判定しています
>もし、vntFileNameで読み込もうとしたファイルが、ファイル其の物は有るが
>中身が無い場合(ファイルサイズが0)が有るので、其のエラー対策です
>
>所で、コード自体は上手く動かないのですか?
>其れが知りたいのですが?
|
|