プロが教える店舗&オフィスのセキュリティ対策術

エクセルのマクロを組んでいますが、うまくできません。

Sheet1の3行r列目の値(rは定義済み)を
Sheet2全体で検索したいです。

Worksheets("Sheet1").Cells.Find(What:=Range(Cells(3,r),Cells(3,r)), After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, MatchByte:=False, SearchFormat:=False).Activate

マクロの記録をして、さらに色々調べながらやったところ
Cellsの前にシートを指定できることとWhat:=の後はRangeをもってこれることがわかり
上記のような式になりましたがエラーになってしまいます。

できればSheet1をアクティブな状態にしておいて、上記マクロ実行後
Sheet2で検索した値を選択した状態になっていればいいなといったところです。

私、恥ずかしながらマクロの知識全てネットで調べつつ組んでいるレベルの初心者です。
詳しい方、ぜひ教えてください。

質問者からの補足コメント

  • 補足です。
    Sheet1で毎月列が足されます。
    例えば9月の集計データをまとめる時は全列の最後から2番目に9月の列が追加されます。
    9月と入力するのは3行目のr列のセルです。
    (ここでは毎月全列の最後から2番目に足される列数をrとしています。)
    Sheet2では既に9月の列がありますが、Sheet1で集計した9月のデータをSheet2の9月と入力されたセルのひとつ下に入れたいです。
    そのためにSheet1で足した月をSheet2で探してOffsetを使ってひとつしたのセルを選択できるようにしたいのです。

    このSheet1の値をSheet2から探して選択する方法は無いでしょうか?

      補足日時:2019/11/03 18:48

A 回答 (2件)

VBA初心者です。



この書かれているソースはVBAのソース全体ではないですよね。
全体のソースを書いていただいて、
どこの行でどんなエラーがでているのかを書いていただいた方が
適切な回答が得られるように思うのですが?

それとこういう質問でしたら

教えて!goo >コンピューター・テクノロジー > プログラミング・Web制作 > Visual Basic(VBA)
の方が適切なカテゴリだと思います。
    • good
    • 0

WorksheetオブジェクトとWorksheetsは違いますし、Excelではワークシートのほかにも、いろいろなシートがあります。


何がしたいのですか?(あ、内容は見ていません)
https://www.sejuku.net/blog/32581#Worksheet
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!