「教えて!ピックアップ」リリース!

こんにちは、画像の通り列を指定して削除したら絶対参照を記述してあるセルが =#REF! エラーになってしまうのですが、これはなぜでしょうか?

絶対値を残すやり方、もしくはこの列幅を削除した後同じ形で、絶対値(数式)を残したまま違う場所に転記するマクロを教えて頂けませんか?

表を1列開けて次の表を表示させると言う事です。

よろしくお願い致します。

「エクセル 列を削除したら絶対値を指定して」の質問画像

質問者からの補足コメント

  • どう思う?

    画像忘れてましたw

    「エクセル 列を削除したら絶対値を指定して」の補足画像1
    No.2の回答に寄せられた補足コメントです。 補足日時:2022/03/05 21:51

A 回答 (4件)

ちなみに、ROW関数をお調べになればおわかりかとは思いますが、ROW(D36)としていてもD36セルの中身を参照しているわけではないのでA36でもK36でも結果は同じです。

    • good
    • 1
この回答へのお礼

ありがとう

あ、そうなんですね、いつもの癖で感覚で判断しちゃいました、私の悪い癖です、ごめんなさい。

もうちょっと調べてやってみます。

ありがとうございます!

お礼日時:2022/03/05 23:04

>列の削除後は =INDIRECT("$FG$"&ROW(D36)) に変更されていて



何か問題があるのですか?

私はマクロはやらないですし、既に入っている各セルの式が他のセルにどのように展開していくかもわかりませんのでお答えできるのはここまでとなります。
    • good
    • 1

その場合は



=INDIRECT("$EW$"&ROW(A36))

でどうでしょう?
(ということが書きたかったのですが、元の式がわからなかったので。)
この回答への補足あり
    • good
    • 1
この回答へのお礼

ありがとう

なるほど ありがとうございます。

実現可能そうですが、次の表のL155は =$FG$36 となっていて、同じように=INDIRECT("$FG$"&ROW(K36))として列を削除してみましたが、列の削除後は =INDIRECT("$FG$"&ROW(D36)) に変更されていて、私の知識では既に設定されている数式をすべて変更するのが大変そうです、検証も大変そうですし。

なので、もしご存じでしたら表を一行おきにマクロで転記する方法を教えて頂けませんか? 画像のような感じにしたいのです。

※各セルには絶対値が設定されています。

よろしくお願い致します。

お礼日時:2022/03/05 21:50

えっと、元々どこを指定していたのかとかがわからないので具体的に書けないのですが列指定にINDIRECT関数を使ってみるとかどうです

かね?
    • good
    • 1
この回答へのお礼

ありがとうございます。

INDIRECT見てみました、例えばB155は =$EW$36 なのですが、画像の状態で列を削除すると同じように =INDIRECT(#REF!) となってしまうようですね。

お礼日時:2022/03/05 18:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング