| 
    
     |  | ▼ゆうすけ さん: 
 MsgBoxでシートを指定する という意味がいまいちわかりにくいのですが・・
 
 提示されたコードでブックに対しては
 
 ・このブック名を開いてね というメッセージをだしておいて
 ・ブック選択ダイアログを表示して
 ・操作者に開くべきブックをせんたくさせて
 ・そのブックをマクロで開く
 
 こんな流れですね。
 これをシートに当てはめると
 
 ・このシートを選んでね というメッセージを出して
 ・シート一覧のようなものを表示して
 ・操作者にシートを指定させて
 ・マクロで、そのシートを選択する
 
 こういったことを想定しておられるのでしょうか?
 
 まず、(ブックもそうなんですが)選択すべきシートがわかっているなら
 操作者に選ばせるまでもなく、マクロで直接、そのシートをSelectすれば
 いいのでは? と思うのですが。
 
 そうではなく、選択すべきシートは、やはり、操作者に指定させないと
 マクロでは判断できないということでしょうか?
 
 であれば、γさんコメントの様に、たとえばユーザーフォームで
 シート一覧を表示して選ばせるということも、よく使われる方法ですし、
 以下のように、開きたいシートの任意のセルを選ばせるという手もあります。
 
 Sub Sample()
 Dim c As Range
 
 On Error Resume Next
 Set c = Application.InputBox("目的のシートの任意のセルを選択してください", Type:=8)
 On Error GoTo 0
 
 If c Is Nothing Then Exit Sub  'キャンセルボタン
 
 c.Parent.Select
 
 End Sub
 
 |  |