0
エクセルブックを開いた後にデータの最後の行を取得しようとしていますが、「実行時エラー1004:アプリケーション定義またはオブジェクト定義エラー」が返されていますこの形式をコードに何度も使用していたので、私はここで何が欠けているのか分かりません。 私は変数をLongと定義しましたが、誰にもアイデアはありますか?私のコードは以下の通りです:VBA:LastRowコード実行時のアプリケーション定義エラー
Function get_end_row(ByVal column_with_data As Long) As Long
Dim last_row As Long
last_row = ThisWorkbook.Sheets(1).Rows.Count
get_end_row = ThisWorkbook.Sheets(1).Cells(last_row, column_with_data).End(xlUp).Row
End Function
Sub Master()
Call MVP
End Sub
Sub MVP()
Dim endRow As Long
Dim wb As Workbook, ws As Worksheet
Dim lastRow1 As Long
Set wb = ThisWorkbook
Set ws = ThisWorkbook.Sheets(1)
endRow = get_end_row(1)
Set mvpcomm = Workbooks.Open("File Path")
Set wsMVPComm = mvpcomm.Sheets("Combined")
lastRow1 = wsMVPComm.Range("A" & Rows.Count).End(xlUp).Row
wsMVPComm.Range("A2:AZ" & lastRow1).Copy Destination:=ws.Range("A" & endRow + 1)
End Sub
私は本当にありがとう!ありがとうございました。
投稿をコードで二回それを使うだろうか?一般的に、VBAが特定の範囲を見つけるのに問題がある場合、別のワークブックがアクティブになったり、シート名が変更されたりするため、このエラーが発生しました。 –
lastRow1 = wsMVPComm.Range( "A"&Rows.Count).End(xlUp).Row – MCJNY1992
コードをステップ実行し、実際にどの行がエラーをスローするかを確認します。 – user3598756