私は、VBAコードベースのほとんどをワークブック間で共有するためのソリューションを考え出そうとしています。これには.xlam
、共有モジュールとクラス(+それぞれのファクトリ)を含むファイルの作成が含まれます。
私はOffice2007のすばらしいRibbonUIを使用して、そのファイルにカスタムタブを宣言させたいと思っています(議論のために.xlam
それを呼び出しましょう)。ユーザーが特定のアクセス許可(VBAを介して管理)を持っている場合にのみ、一部の要素を表示MyTab
する必要があります。MyTab
それに加えて、他のワークブックにMyTab
、動的要素(VBAを使用する)も含まれる可能性のあるものを追加できるようにしたいと思います。
私が直面している問題は、ブックがAddIn.xlam
動的リボン要素を参照して宣言している場合は常に、Excelが一度にすべて更新しようとするため、2つの別々のスレッドでVBAコードを呼び出し(おそらく)、最終的に失敗することです( VBAはExcelでシングルスレッド強制であるため)、それらに「400」と書かれた空白のダイアログボックスと、「OK」と「ヘルプ」の2つのボタンが生成されます。
誰かがこの問題に最もよく取り組む方法についての経験を持っていますか?