の列のセクションをコピー&ペーストしようとしています。特定の条件を満たす行の最初の17列をコピーしようとしています。If文、実行時エラー1004
Sub CopyRowsAcross()
'Name Worksheets
Dim e As Integer
Dim wsd2 As Worksheet: Set wsd2 = ThisWorkbook.Sheets("DataSheet2")
Dim wsBS As Worksheet: Set wsBS = ThisWorkbook.Sheets("Budget Summary")
'Set variables
For e = 3 To 1776
Dim LastRow As Long
LastRow = wsBS.UsedRange.Row - 1 + wsBS.UsedRange.Rows.Count
'Set Criteria for copying lines across
If ((IsEmpty(wsd2.Cells(e, 1).Value) = False And IsEmpty(wsd2.Cells(e, 4).Value)) = True) Or (IsEmpty(wsd2.Cells(e, 1).Value) = False And IsEmpty(wsd2.Cells(e, 4).Value) = False) Or (IsEmpty(wsd2.Cells(e, 1).Value) = True And IsEmpty(wsd2.Cells(e + 1, 5).Value) = False And IsEmpty(wsd2.Cells(e, 4).Value) = False) Then
'Particulars of copying
wsd2.Range(Cells(e, 1), Cells(e, 17)).Copy
*wsBS.Range(Cells(LastRow + 1, 1)).PasteSpecial xlPasteValues*
End If
Next e
End Sub
スターを付けた行が問題として強調されていますが、コードは、もはやコードがある
「ワークシートが失敗したメソッド 『オブジェクトの範囲を』」と言って、ランタイムエラー1004をあきらめ、機能しません。
誰かが私にそれが動作していない理由とそれを修正する方法を教えてくれることを願っていますか? 多くのありがとう