- ベストアンサー
エクセルでセルのコピーについて
いつもお世話になってます。 Win98EXCEL97です 過去ログを見たのですがよくわからなくて。 出来るかどうかわからないのですが。 セルのコピーについてです。 セルA1に「=Sheet1C1」と入力したものを セルA20にコピーすると「=Sheet1C21」となります。 仕組みはわかるんですがこれを「=Sheet1C2」でコピペすることは可能でしょうか? セルA1 「=Sheet1C1」 セルA20 「=Sheet1C2」 セルA40 「=Sheet1C3」 セルA60 「=Sheet1C4」 という感じです。 1000件以上の請求書の処理をするので 助けて頂けると幸いです。 請求書ごとトレースできる方法があればなおうれしいです。 よろしくお願い致します
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
セルA1 「=Sheet1C1」 セルA20 「=Sheet1C2」 セルA40 「=Sheet1C3」 セルA60 「=Sheet1C4」 ということはA1とA20だけ間隔19であとは間隔が20ということでよいのでしょうか? A1は置いといて、A20以降ですが、A20に =INDIRECT("Sheet1!C"&(ROW()/20)+1) と入力してこれをA40,A60,…にコピペしていくとできると思います。
その他の回答 (3)
- fever
- ベストアンサー率43% (32/73)
imogasiさん、そうでした。 C1は$C$1にしておく必要がありましたね! 「=OFFSET(Sheet1!$C$1,ROW()/20,1)」 もしくは 「=IF(OFFSET(Sheet1!$C$1,ROW()/20,1)="","",OFFSET(Sheet1!$C$1,ROW()/20,1))」 となります。
お礼
お礼が遅くなり大変申し訳ございません。 せっかく教えて頂いて頑張って作ったんですが 重くなりすぎて(T_T) いま頑張ってボタンで印字が出来るようにお勉強中です。 また質問させて頂いたときにぜひよろしくお願い致します。 ありがとうございました。
- imogasi
- ベストアンサー率27% (4737/17069)
#2と似ていますが =OFFSET(Sheet1!$C$1,INT(ROW()/20),0) 絶対参照にすべきでは。C1にすると、Sheet1!C1の1の部分が貼りつけで変化しませんか。
お礼
imogasiさんお礼が遅くなり大変申し訳ございません。 せっかく教えて頂いて頑張って作ったんですが 重くなりすぎて(T_T) いま頑張ってボタンで印字が出来るようにお勉強中です。 また質問させて頂いたときにぜひよろしくお願い致します。 ありがとうございました。
- fever
- ベストアンサー率43% (32/73)
セルA20「=OFFSET(Sheet1!C1,ROW()/20,1)」 参照先が空白だと「0」が返ってきますので、それを回避するならば 「=IF(OFFSET(Sheet1!C1,ROW()/20,1)="","",OFFSET(Sheet1!C1,ROW()/20,1))」 A21~39に何が入っているか分りませんが、何も入っていないでしたらA20~39を(20個のセルを塊で)選択し、コピーしてA40から希望する場所まで(20で割れるセル数)指定して貼り付けます。
お礼
お礼が遅くなり大変申し訳ございません。 せっかく教えて頂いて頑張って作ったんですが 重くなりすぎて(T_T) いま頑張ってボタンで印字が出来るようにお勉強中です。 また質問させて頂いたときにぜひよろしくお願い致します。 ありがとうございました。