VBA を使用して Excel リボンの最近のドキュメント履歴を削除する方法。
以下のコードを使用していますが、うまくいかないようです。
Sub Button1_Click()
For i = 1 To Application.RecentFiles.Count - 1
Application.RecentFiles(i).Delete
Next i
End Sub
ありがとう ...
VBA を使用して Excel リボンの最近のドキュメント履歴を削除する方法。
以下のコードを使用していますが、うまくいかないようです。
Sub Button1_Click()
For i = 1 To Application.RecentFiles.Count - 1
Application.RecentFiles(i).Delete
Next i
End Sub
ありがとう ...
最近使用したファイルのリストをクリアし、ユーザーの設定を台無しにしないために、次のコードが機能します。
originalSetting = Application.RecentFiles.Maximum
Application.RecentFiles.Maximum = 0
Application.RecentFiles.Maximum = originalSetting
これにより、最近のファイルが削除され、最近のファイルの最大数がユーザーが最初に持っていたものにリセットされます。
それらを個別に削除したいだけの場合は、逆の順序でそれらをステップ実行して、作業を完了することができます。
Dim i As Integer
For i = Application.RecentFiles.Count To 1 Step -1
Application.RecentFiles.Item(i).Delete
Next
最近のファイルコレクションからエントリの1つを削除するとすぐに、残りのファイルのすべてのインデックスが変更されるため、コレクションの一番下から上に実行する必要があります。このように、ループを通過するたびに、コレクションの最後のアイテムを削除します。
また、このコレクションはBase0ではなくBase1であるため、コレクションの最後の項目は.RecentFiles.Count-1ではなくApplication.RecentFiles.Countです。
私はExcelのこれらの小さな矛盾がすべて大好きです..:)
最近使用したファイルの一覧を非表示にする直接的なメカニズムはありません。ただし、Application.RecentFiles.Maximumをゼロ (0) に設定することで実行できます。
詳細については、 Ron de Bruin による「 Excel 2007 のリボンを変更する」を参照し、「独裁者の例と MRU ('最近使用した') ファイル リストを非表示にする」というタイトルのセクションまでスクロールします。コードは Jim Rech から提供されています。
これは手動で行うこともできます。参照: Office 2007 (Word、Excel、PowerPoint) で最近使用したドキュメント リストを消去および削除する方法.
-- マイク
最近のファイルのリストからアクティブなワークブックをクリアするには、次を使用します。
Sub DeleteFileFromRecentFiles()
Dim i As Integer
For Each RecentFile In Application.RecentFiles
If ActiveWorkbook.Name = RecentFile.Name Then
i = i + 1
Application.RecentFiles.Item(i).Delete
End If
Next
End Sub
敬具、リチャード