-1

A2:O30の表形式のデータがあります

マクロボタンをクリックして範囲Q2:A33などにこのテーブルデータをコピーする必要があります

このコードを使用しました

Sub Button1_Click()
  If Range("Q2").Value = "" Then
      Range("Q2:AE33").Value = Range("A2:O33").Value
  Else
      Range("Q2:A33" & ActiveSheet.Rows.Count).End(xlUp) _
      .Offset(0, 1).Value = Range("A2:O33").Value
  End If
End Sub

正常にコピーされますが、次にボタンをクリックするとエラーが表示されます。次にボタンを押したときから、AEの横のテーブル範囲、つまりAG2:AU33からコピーする必要があります。

ボタンをクリックして継続的にコピーする必要があります。

前もって感謝します。

4

1 に答える 1

0

Else ステートメントで範囲を正しく定義していません。また、範囲変数を使用して、Range("A2:O33")常に言う必要がないようにします。次のようにします。

Dim rngCopy as Range
Set rngCopy = Range("A2:O33")

Cells("A" & Activesheet.Rows.Count).End(xlUp).Offset(0, 1).Resize(rngCopy.Rows.Count, rngCopy.Columns.Count).Value = rngCopy.Value
于 2013-03-15T14:08:26.057 に答える