Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Excel 07ワークシートには、同じ(同じ名前、同じ関数がリンクされている)さまざまな形があります。
これらのどれが押されているかを知る必要があります(TopLeft Row / Column)。Application.Callerは名前を正しく識別しますが、複数のインスタンスがあるため、どのインスタンスを押したかを識別できません。
私は何度も形をコピーしているので、それらがすべて同じと呼ばれることを好むでしょう。
上記のTimWilliamsのコメントに基づいて、すべての形状の名前を一意に変更するには、
Dim sh As Shape For Each sh In ActiveSheet.Shapes sh.Name = "Button_" & sh.ID Next sh
その後、Application.Callerは正常に動作します。このソリューションは、一部のアプリケーションでは見栄えがよくない場合がありますが、機能します。