[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『フォルダの中を表示する』(さゆり)
こんにちわ。エクセルマクロをご教授下さい。
フォルダ(A2)の中身を全て表示する
フォルダ名(A2)が存在しない場合は、「フォルダが存在しません」とメッセージを表示する。
よろしくお願いします。
A B C 1 フォルダ名 2 C\さゆり 3
< 使用 Excel:Excel2010、使用 OS:Windows7 >
Sub SSS()
保管場所 = Sheets("menu").Range("O25")
ChDir 保管場所 Application.Dialogs(xlDialogOpen).Show End Sub
ここまでできました。
エラーの場合(On Error Resume Next)
例えば 保管場所が存在しない場合、”保管場所が存在しません”とメッセージをだしたいのですが
うまくいきません。
どうすればよろしいですか?
(さゆり) 2017/02/23(木) 12:47
On Errorステートメント http://officetanaka.net/excel/vba/statement/OnError.htm
を参考にしてみてください。 (bi) 2017/02/23(木) 13:05
Sub SSS() Dim 保管場所 As String
保管場所 = Sheets("menu").Range("O25")
If Dir(保管場所, vbDirectory) = "" Then MsgBox 保管場所 & " が存在しません。", vbCritical, "エラー" Exit Sub End If
ChDir 保管場所 Application.Dialogs(xlDialogOpen).Show End Sub (???) 2017/02/23(木) 17:12
もし、xlDialogOpen を使うのであれば、初期フォルダや、必要であれば、ファイル形式も指定できますので ??? さんのコードの
ChDir 保管場所 Application.Dialogs(xlDialogOpen).Show
ここを以下のように記述することも可能です。 対象フォルダがカレントドライブとは異なる場所にある場合は ChDir だけでは 切り替えができませんし、フォルダがネットワークドライブにある場合は、ややこしいコードが必要ですので。
With Application.FileDialog(msoFileDialogOpen) .InitialFileName = 保管場所 .Show End With
( β) 2017/02/23(木) 19:50
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.