• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【ExcelVBA】IEの一時ファイルと履歴の削除)

【ExcelVBA】IEの一時ファイルと履歴の削除

このQ&Aのポイント
  • WinXPで一時ファイルを削除する方法を教えてください
  • インターネット一時ファイルと履歴を削除するためのVBAコードについて詳しく教えてください
  • Excel VBAを用いてインターネット一時ファイルと履歴を削除する方法を教えてください

質問者が選んだベストアンサー

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.1

とりあえず一時ファイルの方だけみつけました。結構大げさな感じですが... Windows7 Home 64bit では、VB6→VBAのフォームに合わせた小改造で動きました。 Form_Load() -> UserForm_Initialize() への変更と、CommandButton,ListBoxの名前をVB6用コードに合わせて改名等 一時ファイルを一個ずつ消すのは試しておりますが、DeleteAllの方は未検証です。 URLは http://www.mvps.org/vbnet/ Code Library -> File API -> FindFirstUrlCacheEntry: Delete the IE Cache と進んで下さい。 ところで、VBAのUserFormにもUserForm_Resize()イベントはあるけれど、API等でフォームの属性を書き換えてやらないと、肝心のresizeが出来ない?その部分は未検証です。

h_hogehoge
質問者

お礼

返事が遅くなり申し訳ありません。 ご教授いただいた方法で削除することができました。 本当にありがとうございました。

その他の回答 (2)

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.3

#1です。#2さんのご回答で十分なのでしょうが、中途半端になってしまうので、履歴削除の方も載せておきます。こちらは未検証です。ご参考まで。 http://web.archive.org/web/20030731142906/http://codeguru.earthweb.com/mfc/comments/45982.shtml

h_hogehoge
質問者

お礼

返事が遅くなり申し訳ありません。 ご教授いただいた方法で削除することができました。 本当にありがとうございました。

回答No.2

私が使っているマクロを書きます。 参考にして下さい。 Dim AAA, BBB, CCC Set AAA = CreateObject("Shell.Application") Set BBB = AAA.Namespace(32).Items 'インターネット一時ファイル For Each CCC In BBB CCC.Delete Next Set BBB = AAA.Namespace(33).Items '履歴 For Each CCC In BBB If CCC.Name<>"index" Then CCC.Delete End If Next Set AAA = Nothing Set BBB = Nothing

h_hogehoge
質問者

お礼

返事が遅くなり申し訳ありません。 今回は mitarashi 様の方法で解決しました。 ご教授いただき、本当にありがとうございました。

関連するQ&A