VB6.0について質問です。
指定のフォルダ内にあるMDBファイル名をうまく取得できないのでお知恵をお貸しください。
最初のファイル名は取得できるのですがitem = Dirで次のファイル名を取得できないでいます。
INIfile_readでiniファイルから設定値を取得しています。
エラーメッセージは「プロシージャの呼び出し、または引数が不正です」
最初にファイル名を取得できているときにDirをウォッチ式の追加でみてみたらちゃんと次のファイル名は表示されます。
この場合どのような処理ミスが考えられますか??
path = INIfile_read("PATH", "HD")
item = Dir(path & "\" & "*.mdb", vbNormal)
Do While item <> "" ' ループを開始します。
date1 = Mid(item, 1, 4) & "/" & Mid(item, 5, 2) & "/" & Mid(item, 7, 2)
count = DateDiff("d", date1, Date) '今日とファイル作成日との差を取得
bkup = INIfile_read("DateDiff", "DATE") 'iniファイルから削除す日数を取得
If count > bkup Then
Kill (path & "\" & item)
End If
item = Dir
Loop
No.4ベストアンサー
- 回答日時:
dir()のLoopの中で、
Kill (path & "\" & item)
を実行しているからじゃないですか?
取得するファイル名のリストがどんどん変化(この場合は削除されて減っている)するので
削除後のファイル名は隙間が開くと思います。
例えば
2番目のファイル名を取得した後で、それを削除すると
次のDir()で取得した3番目のファイル名は
削除前の4番目のファイル名になって3番目のファイル名が取得できない
ということだと思います。
ファイルを削除した場合は、Dir()を最初からやり直したらどうでしょう?
No.5
- 回答日時:
Hayashi_Trek さんのおっしゃる通りだと思います。
私も以前同じ様なことを経験していました。
その時は、FileSystemオブジェクトを使って作り直しました。
参考URLをご覧下さい。
参考URL:http://msdn2.microsoft.com/ja-jp/library/y32kbeb …
No.3
- 回答日時:
どの行でエラーが発生いているのか不明のためはっきりとした原因がわかりません。
INIfile_read()の不具合、MDBのファイル名の定義ミス、count という変数名、その他にエラーの原因があると思われます。
下記コードで実行させてみましたが itemにはちゃんとファイル名が入っていました。
path = "c:\work"
item = Dir(path & "\" & "*.mdb", vbNormal)
Do While item <> "" ' ループを開始します。
Debug.Print item
item = Dir
Loop
No.2
- 回答日時:
ステップ実行で
item = Dir
のところでエラーが出ているのを確認しましたか?
bkup = INIfile_read("DateDiff", "DATE")
で次の項目を読みにいってエラーとなっているって事はないですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) VBA GetAttrについて教えてください 2 2022/12/22 15:25
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) あるフォルダーのファイルを違う親フォルダーのサブフォルダーに移したい 11 2023/02/15 19:00
- Visual Basic(VBA) Excel VBA でデータ転記について 1 2023/03/07 19:11
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) ファイル名の右側を変更したい ファイル名:「1001日別売上」の左側へ「2022」を追加し、「202 6 2022/10/14 10:03
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Visual Basic(VBA) 【VBA】印刷マクロのループ処理が反映されません 3 2022/08/09 02:15
このQ&Aを見た人はこんなQ&Aも見ています
-
好きなおでんの具材ドラフト会議しましょう
肌寒くなってきて、温かい食べ物がおいしい季節になってきましたね。 みなさんはおでんの具材でひとつ選ぶなら何にしますか? 1番好きなおでんの具材を教えてください。
-
人生最悪の忘れ物
今までの人生での「最悪の忘れ物」を教えてください。 私の「最悪の忘れ物」は「財布」です。
-
「覚え間違い」を教えてください!
私はかなり長いこと「大団円」ということばを、たくさんの団員が祝ってくれるイメージで「大円団」だと間違えて覚えていました。
-
いけず言葉しりとり
はんなりと心にダメージを与える「いけず言葉」でしりとりをしましょう。 「あ」あら〜しゃれた服着てはりますな 遠くからでもわかりましたわ
-
とっておきの「まかない飯」を教えて下さい!
飲食店で働く方だけが食べられる、とっておきの「まかない飯」。 働いてらっしゃる方がSNSなどにアップしているのを見ると、表のメニューには出てこない秘密感もあって、「食べたい!!」と毎回思ってしまいます。
-
VB6 Dir関数で52エラー発生
Visual Basic(VBA)
-
Redim とEraseの違いは?
Access(アクセス)
-
VB6で、長い時間かかる処理実行中の表示の工夫について
Visual Basic(VBA)
-
-
4
DIR関数
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
ファイル名に ” を使うと エク...
-
ftp処理でmove(移動)を行いたい
-
バッチファイルで、iniファイル...
-
[DOS] コピー先に同じファイル...
-
コマンドプロンプトでファイル...
-
ExcelVBAのDirでスペース含むフ...
-
サブフォルダからファイルをコ...
-
VBA GetAttrについて教えてくだ...
-
gnuplotで日本語を含むepsファ...
-
access,vbaでフォルダ内のファ...
-
【DOSバッチ開発】末尾のタブの...
-
word VBA ファイル名 保存
-
コマンドでファイルコピーする...
-
バッチ処理で16進数でファイル...
-
前日日付のファイルGETバッチ
-
フォルダ内の更新日時が一番新...
-
VB6.0 Dir関数について
-
【vbs】ファイル名の検索と該当...
-
.batでファイル名から抽出して...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
コマンドプロンプトでファイル...
-
バッチファイルで、iniファイル...
-
ftp処理でmove(移動)を行いたい
-
コマンドプロンプトで変数が数...
-
[DOS] コピー先に同じファイル...
-
ExcelVBAのDirでスペース含むフ...
-
バッチコマンドでファイル名の...
-
フォルダ内の更新日時が一番新...
-
.batでファイル名から抽出して...
-
access,vbaでフォルダ内のファ...
-
【Access】エクスポート時のフ...
-
ファイル名に ” を使うと エク...
-
ファイル名を該当フォルダ内か...
-
VBA GetAttrについて教えてくだ...
-
ファイル名の頭5桁と同名のフォ...
-
VBScriptで特別な意味を持つ記...
-
エクセルVBAを使用してJPGファ...
-
DOSのバッチ作成について‐FORの...
-
Windowsコマンドプロンプトで、...
おすすめ情報