プロが教えるわが家の防犯対策術!

いつもお世話になっております

エクセルで別のシートの複数の計算結果が参照されている<計算結果>のセルの値を、そのシートの決まった列の最下行に転記したいのですが。

例えば添付のようにJ列の3-6行目のセルの値を、D列:G列の最下行に転記したいのですが。
転記のキッカケはボタンのクリックで実行されれば良いのですが宜しくお願いします。

NETで見よう見まねで試行錯誤したが動かないのでHelpお願いします。

「エクセル VBAでセル内容を別の列の最下」の質問画像

A 回答 (2件)

こんにちは



最下行の判断をどこで行うのかによりますが、例えばC列で判断しても良いのなら
Set r = Cells(Rows.Count, 3).End(xlUp)
r.Offset(1).Resize(, 4).Value = WorksheetFunction.Transpose(Range("J3:J6"))
とか。

C列の値が先に入力されていて、その行に転記するならOffsetは不要ですね。
あるいは、別の列で最下行を判断したいのなら、列を変えれば良いでしょう。
    • good
    • 0
この回答へのお礼

早々のご回答ありがとうございました。

うまく行きました。
Transpose を使うと3行で出来てしまうのですね。
助かりました。

お礼日時:2022/11/29 10:14

おはようございます。



一例ですが、マクロの記録で、J3~J6をコピーして、D5セルを選択。
右クリックで、形式を選択して貼り付けの値と、行列を入れ替えにチェック
を入れて、OKをクリックする。ESCキーを押す。

上記コードのD5セルを選択の部分を、下記のコードに変更する事で
できるかと思います。

Cells(Rows.Count, "D").End(xlUp).Offset(1).select

●最後の行の下にデータを追加する方法
http://www.start-macro.com/55/w/s051.html
    • good
    • 0
この回答へのお礼

現在ご提案のマクロの記録を手動で実施していてVBAにしようとして最終行の取得がうまく行かなくてHELPした次第です。

URLは参考にさせてもらいます。

お礼日時:2022/11/29 10:08

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