2012-02-12 12 views
1

ActiveSheet.CustomPropertiesを使用して、各ワークシートのマクロの設定を一時的に保存しようとしています。このコレクションに同じ名前のアイテムを2回追加することは不可能です。どうして?CustomPropertiesに同じアイテムを2回追加することはできませんか?

各項目はインデックス番号(インデックス番号:ActiveSheet.CustomProperties.Item(1).Nameを指定してプロパティを読み取ります)によって識別されるため、同じ名前のアイテムを必要なだけ追加することはできません。

私のコードは単純です:

ActiveSheet.CustomProperties.Add "foobar", 1 

それは最初の時間を動作しますが、私は次のエラーをもう一度取得:

エラーN°9:添字が範囲外

ありがとうございます。

答えて

2

はい、追加することはできません。このコードを使用できます

Sub sample() 
    On Error Resume Next 
    ActiveSheet.CustomProperties(1).Delete 
    On Error GoTo 0 
    ActiveSheet.CustomProperties.Add "foobar", 1 
End Sub 
+0

ありがとうございます。 ActiveSheet.Parameter1などのアクティビティシートにプロパティを追加したいと思います。 WorkSheetオブジェクトをクラスにラップしてそのプロパティを拡張することは可能ですか? – Cutter

+3

"Public Withevents wb as Excel.Workbook"のように宣言されたパブリック変数を持つクラスを作成し、プロパティを追加することは可能です。 –

+0

@Cutter:Dougはすでにあなたに質問に答えています:) –

関連する問題