У меня возникла проблема, когда средство выбора даты в Excel использует версию даты, которую я ищу, для США.
Я пытаюсь проверить, существует ли рабочий лист в диапазонеячеек существует дата, которая попадает в параметры DTpicker1 и DTpicker2.
Может кто-нибудь посоветовать, как заставить код проверить дату в формате uk?
Private Sub CommandButton1_Click()
Dim s As Worksheet, wb As Workbook
UserForm1.Hide
For Each s In Worksheets
If CBool(Application.CountIfs(s.Range("E11:E37"), ">" &
Format(DTPicker1.Value, "dd/mm/yy"), _ s.Range("E11:E37"), "<" &
Format(DTPicker2.Value, "dd/mm/yy"))) Then
If wb Is Nothing Then
s.Copy
Set wb = ActiveWorkbook
Else
s.Copy after:=wb.Worksheets(wb.Worksheets.Count)
End If
End If
Next s
If wb Is Nothing Then
MsgBox ("No Records Found")
Else
wb.SaveAs Filename:="Technicians - Batch Record Report" & Format(Date,
"ddmmyyyy"), _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
End If
End Sub
Благодарю @Jeeped, который дал мне это далеко!
Обновление: Код работает путем изменения формата даты:
Private Sub CommandButton1_Click()
Dim s As Worksheet, wb As Workbook
UserForm1.Hide
For Each s In Worksheets
If CBool(Application.CountIfs(s.Range("E11:E37"), ">" &
Format(DTPicker1.Value, "mm/dd/yy"), _ s.Range("E11:E37"), "<" &
Format(DTPicker2.Value, "mm/dd/yy"))) Then
If wb Is Nothing Then
s.Copy
Set wb = ActiveWorkbook
Else
s.Copy after:=wb.Worksheets(wb.Worksheets.Count)
End If
End If
Next s
If wb Is Nothing Then
MsgBox ("No Records Found")
Else
wb.SaveAs Filename:="Technicians - Batch Record Report" & Format(Date,
"ddmmyyyy"), _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
End If
End Sub