ワークシートのデータの最終行を取得する

<分類:値取得>
<使用例:①上から下方向へデータの入った連続した行の最終行を取得、また、②Excelの最大行から上方向にデータが存在する行まで調べて最終行を取得 ①と②お互い一致したら正常、不一致だったら、データの行間に隙間があるので異常(最終行取得エラーとして0を出力)>
<注意:サンプルデータを作成するプログラムになっていますので、Sheet1は何もデータがないシートをご用意ください>
<プログラム例>

Sub 使用例()
   Dim max_row As Long
     
  'サンプルデータ作成
   Cells(1, 1) = "2019/9/8"
   Cells(1, 2) = "00:00:00"
   Cells(1, 3) = "28.7"
   
   Cells(2, 1) = "2019/9/8"
   Cells(2, 2) = "01:00:00"
   Cells(2, 3) = "29.0"
   
   Cells(3, 1) = "2019/9/8"
   Cells(3, 2) = "02:00:00"
   Cells(3, 3) = "29.1"
   
   Cells(4, 1) = "2019/9/8"
   Cells(4, 2) = "03:00:00"
   Cells(4, 3) = "29.1"
   
   max_row = 共通_最終行取得("Sheet1")
   Cells(max_row, 1).Select
   
   MsgBox ("最終行は" & max_row & "です")
      
   
End Sub

Function 共通_最終行取得(sheet_name As String)

    Dim maxrow_d As Long
    Dim maxrow_u As Long
    
    maxrow_d = Worksheets(sheet_name).Cells(1, 1).End(xlDown).Row
    maxrow_u = Worksheets(sheet_name).Cells(Rows.Count, 1).End(xlUp).Row
    
    If maxrow_d = maxrow_u Then
       共通_最終行取得 = maxrow_u
    Else
       共通_最終行取得 = 0
       MsgBox ("最終行不一致")
    End If
    
End Function