※ ChatGPTを利用し、要約された質問です(原文:エクセルでシートにリンクを貼り付けているのですが元シートに行を挿入した)
エクセルで挿入した行に対応するリンク先シートの行を挿入する方法
このQ&Aのポイント
エクセルでシートにリンクを貼り付けている際、元シートに行を挿入した場合に、リンク先シートの行も挿入する方法を説明します。
エクセルのバージョンが2003である場合でも、マクロを利用して行を挿入することができます。
マクロを組む方法が分からない場合でも、以下の手順を試してみてください。
エクセルでシートにリンクを貼り付けているのですが元シートに行を挿入した
エクセルでシートにリンクを貼り付けているのですが元シートに行を挿入した場合にリンク先シートの行も挿入になってほしいのですが・・・
例えば
Sheet1
A B
1 Aさん 150
2 Bさん 270
3 Cさん 100
4 Dさん 300
5 Eさん 350
と入力し、Sheet2に以下の式?を入力した場合
Sheet2の式 Sheet2の表示
A B A B
1 =Sheet1!A1 =Sheet1!B1*2 1 Aさん 300
2 =Sheet1!A2 =Sheet1!B2*2 2 Bさん 540
3 =Sheet1!A3 =Sheet1!B3*2 -> 3 Cさん 200
4 =Sheet1!A4 =Sheet1!B4*2 4 Dさん 600
5 =Sheet1!A5 =Sheet1!B5*2 5 Eさん 700
このようになるかと思います。
Sheet1の3行目に行を挿入した場合ですが
Sheet1
A B
1 Aさん 150
2 Bさん 270
3 ←行の挿入→
4 Cさん 100
5 Dさん 300
6 Eさん 350
Sheet2は以下のようになってしまします。
Sheet2の式 Sheet2の表示
A B A B
1 =Sheet1!A1 =Sheet1!B1*2 1 Aさん 300
2 =Sheet1!A2 =Sheet1!B2*2 2 Bさん 540
3 =Sheet1!A4 =Sheet1!B4*2 -> 3 Cさん 200
4 =Sheet1!A5 =Sheet1!B5*2 4 Dさん 600
5 =Sheet1!A6 =Sheet1!B6*2 5 Eさん 700
元シートに行を挿入した場合以下のようになってほしいのですが方法はございますでしょうか?
Sheet2の式 Sheet2の表示
A B A B
1 =Sheet1!A1 =Sheet1!B1*2 1 Aさん 300
2 =Sheet1!A2 =Sheet1!B2*2 2 Bさん 540
3 =Sheet1!A3 =Sheet1!B3*2 -> 3 空白 空白
4 =Sheet1!A4 =Sheet1!B4*2 4 Cさん 200
5 =Sheet1!A5 =Sheet1!B5*2 5 Dさん 600
6 =Sheet1!A6 =Sheet1!B6*2 6 Eさん 700
因みにエクセルのバージョンは2003です。
いろいろと調べてみたのですがやり方を見つける事ができませんでした。
マクロを組めば出来そうな気もするのですがなにぶん素人なもので組み方もわからず困り果ててしまいました。
初歩的な質問で申し訳ございませんがどなたかご指導よろしくお願いします。
お礼
conanthe様、こんにちは。 ご回答ありがとうございます。 2つも案を頂きまして本当に恐縮しております。 一つ目のやり方につきましては私が素人と宣言した事へのご配慮と思っております。 やはりconanthe様が懸念された通り新たに式をコピペしなければいけないのがちょっとネックです。 ただ、シートを2枚同時に選択する方法は知らなかったので勉強になりました。 二つ目のやり方は素晴らしいです。 OFFSET関数を使う方法などは思いつきもしませんでした。 初めは読んでいて意味不明でしたが記述してみると「なるほど~」といった感じです。 解説にもコメントしてありますが挿入ではなくスライドといった考えなのですね。 シート1と2が同じ構造である事が条件である事も理解できました。 ご指摘通り構造条件がずれた場合はOFFSETの始まり、もしくはOFFSET値を変更する必要がありますね。 素人が陥りそうな懸念事項までしっかりとフォローしてある回答よりconanthe様のお人柄が想像できます。 ご多忙の中、ご回答ありがとうございます。