次のコードは正常に動作しますが、期待どおりに動作しません。範囲をテーブルに変えて名前を変更しましたが、ループには入りません。私はテーブルにそれを回すことなく別の名前付き範囲を追加し、それは動作します。名前付き範囲の名前の一覧表示
Option Explicit
Sub GetNamesFromNamedRanges()
Dim MyName As Name
For Each MyName In ActiveWorkbook.Names
Debug.Print MyName.Name, MyName.RefersTo
Next MyName
End Sub
UPDATE
私は私が間違って行っていたものを実現しています。予想される結果が得られなかったのは、名前のマネージャーでテーブルの名前を変更したためですが、まだ新しい名前のテーブルのままでした。したがって、For Each MyName In ActiveWorkbook.Names
はそれを印刷しませんでした。ネーム・マネージャー以外に新しい名前に変更したとき、それは期待どおりに機能しました。スキップが指摘するように、コードが作業を行う
新しいシートを開き、名前マネージャーを使って名前付きの名前を付けました。そのコードは正常に動作します。これは、範囲を強調表示してセル参照ペインで名前を付けることによって、 'worksheet'で作成された範囲を取得します。 ** set rngTest = Range( "A1:A10") ' –
*が動作していない* < - 詳細を教えてください。ここの周りに十分な担当者がいるので、このような悪い質問をするよりもはるかに良いはずです。それは改善することができます、そうしてください。 –