私の VBA プロジェクトでは、かなり複雑な一連のユーザーフォームを使用しています/使用する予定です。それらの多くは視覚的には同じですが、ボタンに異なるサブルーチンが接続されています。その結果、同じレイアウトから異なる機能を得るためにそれらを複数回複製するという考えにはあまり熱心ではありません。どのサブルーチンがそれを呼び出したかをユーザーフォームに検出させ、これをフロー制御で使用することは可能ですか? 私はこのようなことができるようにしたいと思います:
Private Sub UserForm_Initialize()
If [the sub that called the userform is called "foo"] then
Call fooSub
else
Call barSub
End If
End Sub
私のバックアップ計画は、呼び出しサブルーチンにグローバル変数フラグを設定させ、ユーザーフォームにそれをチェックさせることですが、それはかなり粗雑で不器用な解決策のようです。
みんなありがとう、
ルイス