- ベストアンサー
Excel セルに名前
Excelの名前付けしたセルから列や行を+1したい場合はどのようにやれば良いのですか? 通常のセルなら分かるのですが、名前を付けたセルを動的に扱うにはどうすれば良いのでしょうか? すみませんが、助けて下さい。 よろしくお願いします。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
No4です。 「あああ」のセル範囲が1つの場合は、お考えの通り Range("あああ").Offset(1, 0).Valueで値を取れるかと思います。 しかし、「あああ」のセル範囲が複数のセルから構成されている場合は 複数あるセルのどの部分と言う指定が必要になるかと思います。 例としましてA1:B2が範囲だと仮定しますと OFFSET(1,0)で範囲はA2:B3になります。 ここからA2の値を取り出すには Range("あああ").Offset(0, 1).Cells(1, 1).Value になります。 Cells(行,列)の値を変化させることにより、取り出すセルを変更できます。 つたない説明になりましたが、お役に立てれば幸いです。
その他の回答 (6)
- keirika
- ベストアンサー率42% (279/658)
NO4です。 申し訳ありません。訂正です。 Range("あああ").Offset(0, 1).Cells(1, 1).Value と書きましたが 正しくはRange("あああ").Offset(1, 0).Cells(1, 1).Value です。 よろしく御願いします。
お礼
valueで値が取れました。 重ね重ねありがとうございました。
- mu2011
- ベストアンサー率38% (1910/4994)
ctrl+F3キー同時押下→名前を選択→参照範囲欄の参照式が絶対参照となっていると思いますので、列・行の$を削除してお試し下さい。
お礼
ありがとうございます。 私の説明が悪かったです。 関数ではなく、VBAのレベルの話でした。
- keirika
- ベストアンサー率42% (279/658)
セル範囲に「あああ」と名前を付けたとします。 行+1の場合 Range("あああ").Offset(1, 0).Select 列+1の場合 Range("あああ").Offset(0, 1).Select です。
お礼
keirikaさん、ありがとうございます。 できました。 が、移動先の値がとれません。 セル範囲に「あああ」の名前の位置→セルの列を1つ移動 そこのセルの値を取得したいのですが、できません。 単純にRange("あああ").Offset(1, 0).Valueかと思いましたができず・・・。 すみませんが、ご伝授お願い致します。
- FEX2053
- ベストアンサー率37% (7991/21371)
名前をつけたセルは「ドラッグ&ドロップ」や「範囲の変更」で 動かすことが出来ますし、切り取りや行列の挿入でも動きますが・・・。 「動的」というのがどういうコトかよく分からないんですけど、 名前をつけたセルは勝手に動くと困るので、上記のように明示的に しか動かすことは出来ません。コピーなどでは動かないのです。
お礼
ありがとうございます。 私の説明不足でした。 名前を付けたセルを最初指定して、そこから、アクティブなセルを動かしたかったのです。
- FEX2053
- ベストアンサー率37% (7991/21371)
名前をつけたセルを「動かす」ことは出来ません。 一旦削除して付け直しになります。 ただ、関数などで名前をつけたセルを基準に例えば =OFFSET(YAMADA,1,2) などと参照することは出来ますが。
お礼
ありがとうございます。 私の質問の内容が悪かったですね。 名前を付けたセル自体は動かしません。 アクティブなセルを動かすという意味です。 でもOFFSETであってましたけど、関数ではなくVBAです。
- ore-summer
- ベストアンサー率29% (133/454)
挿入メニューから名前→定義→範囲の変更で出来たと思います。
お礼
ありがとうございます。 VBAでの回答が欲しかったです。
お礼
ありがとうございます。 回答大変参考になりました。 助かりました~。 ありがとうございました。