検索値と検索先のシートが別でもOKなVBAはありますか?
「Excel2002」を使用して、内線番号表を
作ろうと思っています。
「表紙」sheetにあるコンボボックスで選んだ
値(各部署名)が、
「内線番号表」sheetの「E1」に入るとします。
(「LinkedCell:内線番号表!E1」)
その「E1」を検索値として「内線番号表」内を
探すマクロを、フォームボタンに登録しました
(以下。自分で書いたわけではないのですが)。
Sub 部署を表示()
With Worksheets("内線番号表")
Sheets("内線番号表").Select
Cells.Find(What:=Range("E1"), After:=Cells(2, 1), LookIn:=xlFormulas, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:=False, MatchByte:=False, SearchFormat:=True).Activate
End With
End Sub
これはこれでうまくいったのですが、少し問題が
出てきてしまいました。
「内線番号表」sheetはデータを取り込んで、
列や行を大幅にいじる事が頻繁にあるので、
コンボボックスの「LinkedCell」として指定した
「内線番号表!E1」という
アドレスが勝手に変更されてしまうのです。
(「$」をつけても駄目でした)
そこで、コンボボックスの「LinkedCell」を、
いじる事がない「表紙」sheetの
セルに変えたいと思うのですが…
「検索先のシートの中に検索値がなくても
検索出来る」方法はあるのでしょうか?
つまり、「表紙」sheetのセルの値を元に、
「内線番号表」sheetを検索するVBAのコードが
あれば、教えて頂きたいのですが…。
(これが出来れば、他にも応用したいと思うので)
コントロールBOXやVBAは勉強し始めた
ばかりなので、うまく説明出来たかどうか
分かりませんが…よろしくお願い致します。
お礼
ご回答ありがとう御座います!! これです!! 思ったとおりの事が出来ました。 有難う御座いました。