• ベストアンサー

貼り付けた数式を最終行まで繰り返し貼り付けたい。

OS:Windows Me ソフト:エクセル2000 同じ内容のデータをもち、それぞれレコード数が異なり、フィールド数が同じ複数のブックがあります。 それぞれのブックを同じ内容で分析するため空の複数セルに数式を入力しましたが、最終行まで繰り返し数式のコピーができるマクロを教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

こんにちは。 ちょっとご質問が解かりづらいです。 例えば、どこかの範囲(仮にA1からA100まで)を選択してから、下記を実行すると隣のセルへの参照式が入ります。 Sub Test()  Selection = "=" & Selection.Cells(1, 1).Offset(0, 1).Address(0, 0) End Sub 最終行までの繰り返しって事ですが、最終行の判定方法が解からないと処理出来ないのです。 例えば、B1からBxxまではデータが入力済みで、B列の最後を判定してC1からCxxまで参照式を入れる場合は、下記の感じです。 Sub Test2()  Range("C1:C" & Range("B65536").End(xlUp).Row) = "=B1" End Sub テスト環境で試してみて下さい。

toraji
質問者

補足

ありがとうございました   早速ですが、   Sub Test2()     Range("C1:C" & Range("B65536").End(xlUp).Row) = "=B1"   End Sub でテストしてみました。最終行を判定し、隣のフィールドに貼付けができました。 "=B1"のダブルクォーテーションの中に数式を入れれば良いのですね ホントにありがとうございました。 そこで、さらに質問したいのですが・・・  例えば、B1からBxxまではデータが入力済みで、B列の最後を判定してC1からGxxまで参照式を入れる場合は・・・     Range("C1:C" & Range("B65536").End(xlUp).Row) = "=数式"     Range("D1:D" & Range("B65536").End(xlUp).Row) = "=数式"     Range("E1:E" & Range("B65536").End(xlUp).Row) = "=数式"     Range("F1:F" & Range("B65536").End(xlUp).Row) = "=数式"     Range("G1:G" & Range("B65536").End(xlUp).Row) = "=数式" と作成すればできるということになりますよね。 この入力を省略するために、C1:F1にあらかじめ数式を入力しておいて、これをコピーして最終行までペーストしたいのですが・・・自分でもpapayukaさんの回答を参考に試みてみましたが、うまくいきませんでした。よろしかったら補足への回答をお待ちしています。

関連するQ&A

専門家に質問してみよう