- 締切済み
エクセルの名前について教えてください。
エクセルには、シートレベルとブックレベルの名前定義があることは、このコーナーで教えて頂きました。 有難うございます。 質問内容は、他のシートに設定されているシートレベルの名前を参照(例えば、シート名がsheet1の任意のセルに"=sheet2!セル名前"って式を入力している)しているときに、シートのコピーを行うと、#N/Aとエラーになってしまいます。 ちなみに自分のシート名を参照している場合は、シートのコピー後も更新されています。 改善方法ってあるのでしょうか? シートのコピーを考慮すると、他のシートのシートレベルの名前参照は出来ないってことなのでしょうか? あと、他のシートのシートレベルの名前を参照するときに、キーボードからは、シングルクォーティションが入力できませんが、入力する方法(必要があるのか?)はありませんか? よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 vba_minaraiさん 詳しくは、おやりになっていることが見えていませんね。 まさか、VBAで行っているわけではありませんよね。 素朴な疑問として、 ・シート名がsheet1の任意のセルに"=sheet2!セル名前"って式を入力している セル名前って、A1 とかB1 とかじゃないのですか? 常識的に、名前定義は、そんな風にはつかわないですよね。 名前定義は、通常Application-ThisWorkbook のクラスにしても、Sheetのクラスにしても、いわば、中身は、数式(.Formula) を扱っているに他ならないのですから、シート・オブジェクトと名前定義の数式の内容に整合性なければ、エラーは起きます。 一旦、数式に置き換えて読んでみれば、ある程度分るはずですね。それに、VBAでは、あまり使われない理由は、数式文字列が、読み換わるだけだから、意味があまりありませんね。 シートを明示的に入れた名前定義は、そのシートに限定されるし、そうでない場合は、ブックに対して限定されますね。 それ以上は、やらないことですから、分らないですね。
- edomin
- ベストアンサー率32% (327/1003)
ここだけ・・・ 「あと、他のシートのシートレベルの名前を参照するときに、キーボードからは、シングルクォーティションが入力できませんが、入力する方法(必要があるのか?)はありませんか?」 Shift+7 で出ませんか?
補足
早速のご回答有難うございます。 シングルクォーティション自体の入力は、Shift+7で出来ますが、エンターキーを押してセルをみると、削除されています。
お礼
質問の仕方が悪かったみたいです。 も一度、自分で何がしたいのか?考えて見ます。 また、同じような質問をすることがあるかも知れませんが、宜しくお願い致します。 ありがとう御座いました。