しばらくチェックしていなかったので回答が遅れました。
つぎのマクロを試して下さい。
目次シートに描画ツールで適当な図形を描画し、それを右クリックして、表示されるメニューから「マクロの登録」を選びます。するとマクロのリストが表示されますので、作ったマクロを選択してOKします。
使い方は、目次シートの見積書番号が記述されたセルを選択して、マクロを登録した図形をクリックします。
見積書が、複数のシートにまたがって作成されているものと想定して、ブック全体を検索するようにしてあります。
選択したセルに記述された見積書番号と同じ番号が見つかると、そのシートを選択し、見積書番号が記述されたセルを選択した状態でマクロが終わります。
見積書番号が見つからない場合は「N/A」とメッセージが表示されます。
10行目に Cells(RN, CN) = "" というコードがありますが、これは、目次シートの選択したセルに記述された見積書番号を一旦削除する(空白にする)コードです。
一旦空白にしないと、このセルに記述された番号を見て、見つかったと満足してしまい、目次シート以外のシートで検索してくれません。
他に良い解決方法があるかもしれませんので他の方の回答に期待します。
一旦削除した見積書番号は後ろから2行目の
Worksheets(SN).Cells(RN, CN) = IV
で元の値に書き戻されますのでご心配なく。
12行目の WS.Select は必要のないコードです。マクロの進行にしたがって、つぎつぎと選択シートを変えていくのが分かるようにして、マクロがちゃんと仕事をしていることを確認するために入れてあります。動くことが確認されたら削除してください。
Sub FindY()
Dim WS As Worksheet
Dim SRCHED As Range
Dim What As Variant
SN = ActiveSheet.Name
RN = Selection.Row
CN = Selection.Column
IV = Selection.Value
What = IV
Cells(RN, CN) = ""
For Each WS In Worksheets
WS.Select
Set SRCHED = Cells.Find(What:=What, After:=ActiveCell, LookIn:=xlValues, _
LookAt:=xlPart)
If Not SRCHED Is Nothing Then Exit For
Next
If SRCHED Is Nothing Then MsgBox "N/A" Else WS.Select: SRCHED.Activate
Worksheets(SN).Cells(RN, CN) = IV
End Sub
お礼
ご親切に有り難うございます。 何とかクリアできそうです。 本当に有り難うございます。