ユーザーがチャート名を変更できないようにチャート名を保護する方法があるかどうかは誰にもわかりませんか? さまざまなチャートを参照するかなりの量のコードがあります。ユーザーが 1 つまたは複数のチャート名を変更した場合、事態は急速に悪化します。
2 に答える
解決策があるかもしれませんが、オーバーヘッドが発生します。
使用しているすべてのグラフに実際のグラフを追加し、ワークブックで名前を保護することができます。これらは、ワークブックに (表のような) 個別のタブとして表示されます。
次のようになります。
チャートを右クリックし、move chart then new sheetを選択します。このようにして、VBA またはリボン メニューを介して個別に保護できる "より良い" チャート オブジェクトが得られ、さらに内部CodeNameがあります。
ここみたいに:
内部 CodeName を使用すると、ユーザーが好きなように名前を付けることができるため、ユーザーの問題を解決する必要があります;)私はインデックスエイターを信頼せず、ユーザー定義の名前を使用するのが嫌いです-処理を除いて、コード名が最適ですコードに含まれていますが、これは vba の重大な欠陥にすぎません。
ただし、これらの追加のグラフは少し煩わしいので、それらを非表示にして、それらのコピーをテーブルの ChartObjects として使用してください。
これでいいはずです。
さらに、保護されたテーブルのネストされたオブジェクトとして保護することによってのみチャート名を保護できるという興味深い事実に遭遇しました。私の試みでも、ワークブック構造とすべてのテーブル/チャート名を保護しない限り、ユーザーは名前を変更できます。
お役に立てれば ;)