2017-11-21 30 views
0

"Sheet1"、 "Sheet2"、 "Sheet3"を検索するためにK7からK13を検索するVBAマクロ(コマンドボタンに付ける)を記述しようとしています。または "Sheet4"既存のIf/Thenステートメントに基づいて、1つの回答のみが可能です。 "Sheet1"を見つけたら、マクロ "GoToSheet1"を実行したい "Sheet2"を見つけたら "GoToSheet2"マクロを実行します "Sheet3"を見つけたら "GoToSheet3"マクロを実行します それは "Sheet4"を見つける私はそれがマクロ "GoToSheet4"を実行したいVBA検索範囲:マクロの実行

私は基本的に誰かがはい/いいえの質問に答える方法に基づいて存在する可能性のある4つの条件があります。これが最初のif/then文がカバーするものです。しかし、私は4つのテキストフレーズのいずれか1つのセル範囲K7からK13を検索するVBAマクロを取得できません。

+0

あなたがこれまでに試したことをお伝えください。 – sktneer

+0

試してみてください(「K7:K13」)もし見つからない場合は(「Sheet1」)何もありませんGoToSheet1' – newacc2240

+0

既存のフォーラムの例を使ってケースステートメントを試しましたが、セルから範囲に検索を変更する方法がわかりません。私はまた、複数の結果を得る方法もわかりません(たとえば、 "Sheet1"が見つからない場合、 "Sheet2"を検索したい)。 – Rob1513

答えて

0

確かに、各セルの値を確認するにはK7:K13の範囲でループすることができます。しかし、これを行うにはRange.Findメソッドを使用する方がよいでしょう。

Private Sub CommandButton1_Click() 
    Dim lookingRange As Range 
    Set lookingRange = Range("K7:K13") 
    If Not lookingRange.Find(What:="Sheet1", LookIn:=xlValues) Is Nothing Then GoToSheet1: Exit Sub 
    If Not lookingRange.Find(What:="Sheet2", LookIn:=xlValues) Is Nothing Then GoToSheet2: Exit Sub 
    If Not lookingRange.Find(What:="Sheet3", LookIn:=xlValues) Is Nothing Then GoToSheet3: Exit Sub 
    If Not lookingRange.Find(What:="Sheet4", LookIn:=xlValues) Is Nothing Then GoToSheet4: Exit Sub 
    MsgBox "not found" 
End Sub 
+0

thanks @ newacc2240、セルの値を検索する方法? – Rob1513

+0

編集されました。しかし、私のExcelはデフォルトでセル値を検索します。 – newacc2240

+0

ゴールデン!とても有難い! – Rob1513

関連する問題