- ベストアンサー
マクロを使った貼り付けの自動改行
みなさま宜しくお願いしますm(__)m 1行目のABCDEは時間を入力する欄で、1行目のGHIには数式が 入力されて求めたい値が表示されています。 1行目J辺りにボタンを作ってマクロを登録し、このボタンを押すと 5行目に数式で求めた値だけを貼り付けるようにしました。 1行目のABCDEに違う時間を入力してボタンを押すと、次は6行目 その次は7行目と貼り付けていく様にしたいのですが、どの様な方法を 使えば良いかご指導お願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 >1行目J辺りにボタンを作ってマクロを登録しこのボタンを押すと >5行目に数式で求めた値だけを貼り付けるようにしました。 5行目のどのセルに貼り付けるのでしょうか? 以下のサンプルは5行目のA、B,C列に貼り付けるようにしてます。 サンプルの内容を現在のコードと入れ替えてください。 '----------------------------------------------------- Private Sub CommandButton1_Click() Dim LastRow As Long LastRow = Range("A65536").End(xlUp).Row If LastRow < 5 Then LastRow = 4 End If Range("G1:I1").Copy Cells(LastRow + 1, "A").PasteSpecial Paste:=xlValues Cells(LastRow + 1, "A").Resize(, 3).NumberFormatLocal = "h:mm" Application.CutCopyMode = False Cells(LastRow + 2, "A").Select '● End Sub '---------------------------------------------------------- 尚、4行目に「見出し」があれば、 If LastRow < 5 Then LastRow = 4 End If この3行は不要です。 それから●のコードがある場合とない場合でどう違うか試してください。 以上です。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17070)
A1,B1,C1に値が荒れられる。 G1に計算された値が入る。 その都度、ボタンをクリック Private Sub CommandButton1_Click() Static i i = i + 1 Cells(i, "B").Offset(5, 0) = Cells(1, "G") End Sub でB5から順に値が累積される。 H,I分は略。 リセットは VBE画面で、実行ーリセット これで何か欠点がないか自信ないが。
お礼
ご指導ありがとうございました。 お礼が非常に遅くなり申し訳ありませんm(__)m 他の方に教えて頂いたものと動作の違いを比較しながら 自分なりに納得できました。 また困った時にご指導して頂ければ幸いです。 ほんとうにありがとうございました。
- Ce_faci
- ベストアンサー率36% (46/127)
こんばんわ 5行目のA列~C列に貼り付けるものとして、6行目からは r=cells(5,1).currentregion.rows.count+4 Range(cells(1, 7), cells(1, 9)).copy destination := cells(r+1,1) になると思います。
お礼
ご指導ありがとうございました。 教えて頂いたものを参考に色々と試してみました^^ これからしっかり勉強して行きたいと思いますので 困った時はまたご指導下さいます様お願い致します。
お礼
大変お礼が遅くなってしまい申し訳ありませんでした。 自分なりに色々調べて、教えて頂いたものを理解していました^^; 頂いたサンプルは希望通りの動作で'●の違いまで付けて頂き感謝です。 ("A65536")がどの位置を指すのか???ですが、もぉ少し調べてみます。 また困った時にはご指導お願い致します。ありがとうございました。