質問: VBAを教えてください 〈印刷〉〈保存〉〈指定セルのクリア〉を同時にするマクロ(ボタン)を作成しました。 ここにもうひとつ加えたいのです。 クリア(ClearContents.)指定してるセル値をこのマクロボタン押下と同時に別シートに転記したいです。 つまりは別シートは一覧表です。 元データ(sheet1)の転記したいセルの並びはバラバラです。 転記したい(sheet2)は横一列にしたいのです。 sheet1,E6⇒sheet2,A1 sheet1,F6⇒sheet2,B1 sheet1,E8⇒sheet2,C1 sheet1,F8⇒sheet2,D1 sheet2は次々と下がっていきたのです。 sheet1のセルは固定、sheet2の一覧はマクロボタン押下とともにA1、A2・・といった具合に記録させていきたいのです 言葉足らずがありましたら、付け足します。 マクロど素人なもので、ご容赦ください。
回答: Sheet2の書き込み行をA列で求める場合です。 Sheet2のA列の元になるSheet1のE6は値があるかチェックします。 コピーは基本は1セルずつですが、1行で連続した部分はまとめてコピー出来るので、まとめてコピーします。 Sub sample() Dim ws1 As Worksheet Dim ws2 As Worksheet Dim r As Long Set ws1 = Sheets("Sheet1") Set ws2 = Sheets("Sheet2") If ws1.Range("E6").Value = "" Then MsgBox "E6は必須です" Exit Sub End If r = ws2.Range("A" & Rows.Count).End(xlUp).Row + 1 ws2.Range("A" & r, "B" & r).Value = ws1.Range("E6:F6").Value ws2.Range("C" & r, "D" & r).Value = ws1.Range("E8:F8").Value End Sub