Я хочу сделать заявление IF If. В ячейках A2 и A3 есть даты. Я хочу, чтобы мой оператор IF Then был следующим: если минута A3 минус минута A2 равна 1, тогда она выполняет мою команду. Я также хочу сделать заявление ElseIf Then, если разница в минутах равна 5 минутам, а если разница в минутах - 15 минут.
Я попытался найти синтаксис в Интернете и скопировал приведенный ниже код, но он не работает. Код читает, что если минутное значение ячейки A3 минус минутное значение ячейки A2 равно 1, то выполняют функцию. Это не работает, хотя.
Sub ExportAverageData()
If (Minute(A3 - A2) = 1) Then
Sheets(2).Select
Range("E2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(OFFSET(R2C2,(ROW()-ROW(R2C5))*15,,15,))"
Selection.AutoFill Destination:=Range("E2:E9999")
Range("F2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(OFFSET(R2C3,(ROW()-ROW(R2C6))*15,,15,))"
Selection.AutoFill Destination:=Range("F2:F9999")
ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas, 16).ClearContents
ElseIf (Minute(A3 - A2) = 5) Then
Sheets(2).Select
Range("E2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(OFFSET(R2C2,(ROW()-ROW(R2C5))*3,,3,))"
Selection.AutoFill Destination:=Range("E2:E9999")
Range("F2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(OFFSET(R2C3,(ROW()-ROW(R2C6))*15,,15,))"
Selection.AutoFill Destination:=Range("F2:F9999")
ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas, 16).ClearContents
ElseIf (Minute(A3 - A2) = 15) Then
Sheets(2).Select
Range("E2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(OFFSET(R2C2,(ROW()-ROW(R2C5))*15,,15,))"
Selection.AutoFill Destination:=Range("E2:E9999")
Range("F2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(OFFSET(R2C3,(ROW()-ROW(R2C6))*15,,15,))"
Selection.AutoFill Destination:=Range("F2:F9999")
ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas, 16).ClearContents
End If
End Sub