В настоящее время я пытаюсь написать макрос для открытия набора отчетов в папке и создания сводных отчетов по всем отчетам. Частично это включает выполнение WorksheetFunction.SumIfs с использованием набора дат. Даты в столбце M используемого мной отчета .csv хранятся в виде текста, поэтому я считаю, что сначала мне нужно их преобразовать. Тем не менее, когда я пытаюсь преобразовать даты в соответствии с приведенным ниже:
Dim MyBook As ActiveWorkbook
Dim Cel As Range
For Each Cel In MyBook.Sheets(1).UsedRange.Columns("M").Cells
If Cel.Row <> 1 Then 'this ensures it does not try and convert the header
Cel.Value = DateValue(Cel.Value)
End If
Next
Фактически он преобразует одну из дат (12/11/2018, т.е. 12 ноября) в формат США (11/12/2018, т.е. 11 декабря). Это происходит только в нескольких случаях. Есть ли способ, которым кто-нибудь знает об этом, который я могу использовать, чтобы остановить это? Большое спасибо заранее.