Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


28537 / 76732 ←次へ | 前へ→

【53491】知恵を貸してくれませんか?
質問  貫井企画  - 08/1/16(水) 21:54 -

引用なし
パスワード
   たびたびすみません。図々しいのですが、
_________________________________________________________________________

Sub シート選択()

Dim InputStr As String
Dim Msg1 As String
Dim Title1 As String
Dim Temp As String
Dim Ron As String
Dim i As Byte

MsgBox "シート選択のマクロを始めます。"

InM:
Msg1 = "選択したいシートの名前を入力して下さい。"
Title1 = "シートの選択"
InputStr = InputBox(Msg1, Title1)

For i = 1 To Worksheets.Count
Temp = Worksheets(i).Name

Select Case i
Case Worksheets.Count
If InputStr = Temp Then
Worksheets(InputStr).Activate
MsgBox Temp & "ワークシートが選択されました。", vbOKOnly + vbInformation, "シートの確認"

Else
MsgBox InputStr & "に該当するワークシートはありません。", vbOKOnly + vbExclamation, "シートの確認"


GoTo OutN

End If

Case Else
If InputStr = Temp Then
Worksheets(InputStr).Activate
MsgBox Temp & "ワークシートが選択されました。", vbOKOnly + vbInformation, "シートの確認"


GoTo OutN
End If
End Select
Next

OutN:

Ron = MsgBox("シート選択を続けますか?", vbYesNo + vbQuestion, "続行確認")

If Ron = vbYes Then GoTo InM Else MsgBox "シート選択マクロを終わります。"

End Sub
_________________________________________________________________________

問題
・シート名を入力せずにOKボタンを押したとき、エラーメッセージを表示させて入力状態に戻すには?

・入力のとき、「キャンセル」ボタンを押したら、マクロを終了するようにしてみるには?

どう工夫・変更したらこのようにすることができるでしょうか?
知恵をお借りしたいです。どうぞよろしくお願いします。
(最初の問題はすでにクリアできている!?)

0 hits

【53491】知恵を貸してくれませんか? 貫井企画 08/1/16(水) 21:54 質問
【53492】Re:知恵を貸してくれませんか? じゅんじゅん 08/1/16(水) 22:08 発言
【53494】Re:知恵を貸してくれませんか? 貫井企画 08/1/17(木) 1:14 お礼
【53493】Re:知恵を貸してくれませんか? Sasurai 08/1/16(水) 22:37 回答
【53495】Re:知恵を貸してくれませんか? 貫井企画 08/1/17(木) 1:16 お礼
【53503】Re:知恵を貸してくれませんか? Sasurai 08/1/17(木) 22:37 回答
【53505】Re:知恵を貸してくれませんか? 貫井企画 08/1/17(木) 23:48 お礼
【53496】Re:知恵を貸してくれませんか? Jaka 08/1/17(木) 9:23 発言
【53506】Re:知恵を貸してくれませんか? 貫井企画 08/1/17(木) 23:49 お礼

28537 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free