下記のマクロを実行すると、メッセージが表示され、ダイアログが開き、不要ファイルをマウスで選択して、「OK」をクリックすると不要ファイルが削除されますが、
マクロを実行すると画像のエラーメッセージが表示され、
コードの「 Sh As SHFILEOPSTRUCT」部分の色が変色し、上手くマクロを実行できません。
解決方法を教えてください。
宜しくお願い致します。
現行のマクロ
ub 不要ファイル選択削除()
Dim InitialPath As String
InitialPath = ThisWorkbook.Path
Dim rs As Integer
rs = MsgBox("ファイルを削除します。", vbCritical + vbOKCancel, "削除の確認")
If rs = vbOK Then
Dim sPath As Variant
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "削除するファイルを選択してください"
.InitialFileName = InitialPath
.AllowMultiSelect = True
If .Show = True Then
ReDim filePath(0)
For Each sPath In .SelectedItems
If filePath(0) <> "" Then
ReDim Preserve filePath(UBound(filePath) + 1)
End If
filePath(UBound(filePath)) = sPath
Next
Call MoveDustbox(filePath)
Else
MsgBox "削除をキャンセルしました。", vbInformation
.Execute
End If
End With
End If
End Sub
Sub MoveDustbox(vPath As Variant)
Dim sPath As Variant
Dim Sh As SHFILEOPSTRUCT
Dim ret As Long
Sh.hwnd = Application.hwnd
Sh.wFunc = &H3
Sh.fFlags = &H40 + &H10
If Not IsArray(vPath) Then
Sh.pFrom = vPath
ret = SHFileOperation(Sh)
Else
For Each sPath In vPath
Sh.pFrom = sPath
ret = SHFileOperation(Sh)
Next
End If
End Sub
以上となります。宜しくお願い致します。
No.1ベストアンサー
- 回答日時:
このようなユーザ定義型が必要なはずです。
Office Tanaka アニメ付きファイル操作
http://officetanaka.net/excel/vba/tips/tips48.htm
の
Public Type SHFILEOPSTRUCT
・・・
End Type
ってやつです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/07/07 08:37
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2024/03/26 18:09
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/10 11:34
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2024/03/27 14:27
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/11/08 10:31
- Visual Basic(VBA) マクロについて教えてください。 下記のマクロは以前教えて頂いたマクロです。 マクロを実行すると 指定 6 2024/01/17 17:50
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
VBAに詳しい方教えてください。
Visual Basic(VBA)
-
VBA 複数条件の分岐処理の上手な方法
Visual Basic(VBA)
-
Excel-VBAのmsgBox()の不思議
Visual Basic(VBA)
-
-
4
Excel VBA 定義されたプロージャ名、関数名の取得
Visual Basic(VBA)
-
5
Vba SelStart、SelLen教えてください教えてください
Visual Basic(VBA)
-
6
VBA レジストリの値の読み方について教えてください
Visual Basic(VBA)
-
7
エクセルVBAについて
Visual Basic(VBA)
-
8
VBAで大量のファイルをシート名ごとに転記やらいろいろしたい!
Visual Basic(VBA)
-
9
Vba 実数および実数タイプの変数について教えてください
Visual Basic(VBA)
-
10
VBAを使用した時間管理
Visual Basic(VBA)
-
11
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
12
現在のブックを閉じないで、マクロ抜きの(現在のブックの)コピーを作成したい
Visual Basic(VBA)
-
13
エクセルについて
Visual Basic(VBA)
-
14
エクセルVBAについて
Visual Basic(VBA)
-
15
VBA 複数のエクセルから一つのエクセルに貼り付ける
Visual Basic(VBA)
-
16
PDF出力マクロについて。マクロ初心者です。 エクセルで、アクティブシートを指定したフォルダに保存す
Visual Basic(VBA)
-
17
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
18
VBAの質問になります メッセージボックス
Visual Basic(VBA)
-
19
Sub 要具ライフ() ActiveSheet.Cells.Find(what:=TOPゴム")."
Visual Basic(VBA)
-
20
テキストファイルのファイル名を抽出してBAT処理する方法はありますか。
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CSVファイルの特定行の削除
-
自動で.xlsを閉じて指定フォル...
-
彼女の過去の恋愛に嫉妬してし...
-
iCloud for Windowsをアンイン...
-
Excelのマクロについて教えてく...
-
共有エクセルファイルでのユー...
-
エクセルで移動したシートを復...
-
VBAにおいて、ファイルの移...
-
docxをmht形式で保存したファイ...
-
ノーツの添付ファイルの場所を...
-
OneDrive必要なものでしょうか
-
エクセルの固定範囲にCSVを貼り...
-
xlsmファイルで、別名ファイル...
-
C# リッチテキスト形式のファイ...
-
CDocumentのファイル名を初期化...
-
エクセルのファイル:「自分」が...
-
このファイルは外部のエディタ...
-
Googleドライブについて
-
EXCELVBAにて文字列にして「01...
-
パワーポイントでの多数の図の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelのマクロについて教えてく...
-
彼女の過去の恋愛に嫉妬してし...
-
CSVファイルの特定行の削除
-
vbsからのExcelマクロ呼び出し...
-
OneDrive必要なものでしょうか
-
Excel: ファイル名になぜ、[...
-
EXCELVBAにて文字列にして「01...
-
ファイルが移動してもリンクの...
-
docxをmht形式で保存したファイ...
-
複数のExcelファイルにある同名...
-
FTPのgetとputの使いわけ。
-
WINDOWS CMDからゴミ箱のファ...
-
iCloud for Windowsをアンイン...
-
エクセルのファイル:「自分」が...
-
[Unity]シーンファイルの中が消...
-
5000個のtiffファイルをpdfへ変...
-
VBAにおいて、ファイルの移...
-
Excelに貼り付けた画像を圧縮す...
-
自動で.xlsを閉じて指定フォル...
-
batでファイル名を変更したい(...
おすすめ情報