×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
Excel VBAで独自メニューを追加し、追加したメニューを操作すると、
1回しか実行されないはずの関数が2回実行され、困っていました。
いろいろ試行錯誤し原因が分かったのでメモしておきます。
下記のようなコードで独自メニューを追加しますが・・・
Dim menuBar As Variant
Dim control As Variant
Set menuBar = Application.CommandBars("Worksheet Menu Bar").controls.Add(Type:=msoControlPopup)
menuBar.Caption = "オリジナルメニュー"
Set control = menuBar.controls.Add
control.Caption = "オリジナルメニューコマンド"
control.OnAction = "subHoge"
control.BeginGroup = False
control.FaceId = 3
最初、関数名の後ろに()を付けて「control.OnAction = "subHoge1()"」としていました。
こう書くと関数が2回実行されるみたいです。
メニュー選択時に実行する関数を指定する際、関数名のみ書くと1回のみ実行されました。
こんな事が原因とは・・・
PR
コメント