[[20230924150458]] 『マクロと関数について』(妖精) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロと関数について』(妖精)

ブックを立ち上げた際に
「B19セルに何もなければ行を非表示にする」
というマクロを組んでいますが、
B19にはVLOOKUP関数で〇〇を参照し、その値を表示させる
という関数を入力しています

マクロはExcel object の該当シートに入力しています

Private Sub Workbook_Open()

    If Range("B19") = "" Then

        Rows(19).Hidden = True

  End If

End Sub

実際にブックを立ち上げた場合、
B19セルに何もないのにマクロは何も実行されませんが
マクロ内で手動で実行すると正常に行が非表示になります

何がおかしいのか教えていただけませんでしょうか?

< 使用 Excel:Excel2016、使用 OS:Windows11 >


 ワークシートの指定がないので、
 対象とするシートとは別のシートのB19セルで判断しているのだと思います。
(xyz) 2023/09/24(日) 15:26:32

  >マクロはExcel object の該当シートに入力しています

  該当シートではなく、ThisWorkbookのモジュールに書いてください。

 Private Sub Workbook_Open()
     With Worksheets("該当シート名")
         If .Range("B19") = "" Then
             .Rows(19).Hidden = True
         End If
     End With
 End Sub

(半平太) 2023/09/24(日) 15:30:56


 わああ、その箇所読み飛ばしていました。
(xyz) 2023/09/24(日) 15:36:38

xyz様
半平太様

お早い回答ありがとうございます。
シート指定という初歩的なことを忘れていました。

また、修正したマクロを「this workbook」に記載した所、正常に動くことを確認できました。

ありがとうございました。

(妖精) 2023/09/24(日) 15:48:35


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.