Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6657 / 13646 ツリー ←次へ | 前へ→

【43982】データのある最終行までコピーペーストする方法 taro 06/10/31(火) 18:06 質問[未読]
【43983】Re:データのある最終行までコピーペースト... ichinose 06/10/31(火) 18:39 発言[未読]
【43992】Re:データのある最終行までコピーペース... taro 06/10/31(火) 19:50 お礼[未読]
【43985】Re:データのある最終行までコピーペースト... Kein 06/10/31(火) 18:40 回答[未読]
【43991】Re:データのある最終行までコピーペースト... taro 06/10/31(火) 19:50 お礼[未読]

【43982】データのある最終行までコピーペーストす...
質問  taro  - 06/10/31(火) 18:06 -

引用なし
パスワード
   あるセルに入力されている計算式を、データのある最終行まで範囲選択してコピー・ペーストする方法について、お知恵を貸してください。

正確に、具体的に申し上げると以下のとおりです。

1.N19には計算式が入力されている。
2.L19:L2559にはデータが、範囲中全てのセルに入力されている。
N19の計算式を、N20からL列のデータが入力されている最終行のN列(ここでいうとN2559)まで選択して貼り付けたい、というものです。

L列のデータがある最終行は、このマクロを使うファイルによってバラバラなので、マクロを組んで範囲指定・コピーペーストしたいと考えています。

初歩的な質問で恐縮ですが、どなたかご教示いただきたく、お願いいたします。

【43983】Re:データのある最終行までコピーペース...
発言  ichinose  - 06/10/31(火) 18:39 -

引用なし
パスワード
   ▼taro さん:
こんばんは。

>正確に、具体的に申し上げると以下のとおりです。
>
>1.N19には計算式が入力されている。
計算式も例を出してください。

>2.L19:L2559にはデータが、範囲中全てのセルに入力されている。
これは、L19:L30ぐらいにしてこれも例を出してください。

>N19の計算式を、N20からL列のデータが入力されている最終行のN列(ここでいうとN2559)まで選択して貼り付けたい、というものです。

ここで結果の数式も記述してください。
N20からN30ぐらいなら記述してもたいしたことはないですから・・・。
そしてそれを記述することによってご質問内容のわかりやすさは
全然違ってきますよ!!


標準モジュールに
'======================================================
Sub test()
  With Range("l19", Cells(Rows.Count, "l").End(xlUp))
    .Offset(0, 2).Formula = Range("n19").Formula
    End With
End Sub

こういうことですか?
始まりはセルL19と決まっているのですよね?

【43985】Re:データのある最終行までコピーペース...
回答  Kein  - 06/10/31(火) 18:40 -

引用なし
パスワード
   N19に入力されている数式が、相対参照形式になっているなら

Range("L19", Range("L19").End(xlDown)).Offset(, 2) _
.Formula = Range("N19").Formula

などとすれば出来ます。あと、手作業でやる場合の AutoFill などでも
コードを組めますが。

【43991】Re:データのある最終行までコピーペース...
お礼  taro  - 06/10/31(火) 19:50 -

引用なし
パスワード
   kein さん

こんばんは。
早速のアドバイスありがとうございます。
おかげさまで一発で解決しました。
感謝しております。

【43992】Re:データのある最終行までコピーペース...
お礼  taro  - 06/10/31(火) 19:50 -

引用なし
パスワード
   ▼ichinose さん:

こんばんは。
アドバイスありがとうございます。

>>1.N19には計算式が入力されている。
>計算式も例を出してください。
=sum(N18,1) という計算式が入力されています。

>>2.L19:L2559にはデータが、範囲中全てのセルに入力されている。
>これは、L19:L30ぐらいにしてこれも例を出してください。
全て文字列が入力されています。「売上高」「売上数」「店舗数」
など、全て項目を示す言葉です。

>>N19の計算式を、N20からL列のデータが入力されている最終行のN列(ここでいうとN2559)まで選択して貼り付けたい、というものです。
>
>ここで結果の数式も記述してください。
>N20からN30ぐらいなら記述してもたいしたことはないですから・・・。
N19に入力されている計算式は、相対参照にしていますので、
N20:=sum(N19,1)
N21:=sum(N20,1)
 ・
 ・
 ・
N30(仮に選択すべき最終行とします):=sum(N29,1)
という状態にコピー・ペーストしたい、
という意図でした。 

>そしてそれを記述することによってご質問内容のわかりやすさは
>全然違ってきますよ!!
>
>
>標準モジュールに
>'======================================================
>Sub test()
>  With Range("l19", Cells(Rows.Count, "l").End(xlUp))
>    .Offset(0, 2).Formula = Range("n19").Formula
>    End With
>End Sub
>
>こういうことですか?
>始まりはセルL19と決まっているのですよね?
アドバイスいただきながら申し訳ありません、「標準モジュールに」以下を
どうすればいいのかすら理解できていない初心者です。
始まりはセルL19で固定されています。

自分では具体的に記入したつもりでおりましたが、
もっと詳細に記すことでより質問の意図が伝わりやすいし、
伝わりやすい質問にすることは質問者のマナーだということですね。
勉強になりました。

私の質問に関しては、ほぼ同じタイミングでご回答くださった
keinさんのアドバイスで解決できました。
もちろん、簡単に答えに辿り着くことだけをよしとするのではなく、
質問の仕方などまだまだ勉強すべきことが多いと省みております。

貴重なお時間をいただいてアドバイスくださったことに感謝して
おります。

6657 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free