Форматы/значения даты Excel VBA изменяются при программном открытии файла

У меня возникла проблема с программным открытием файла.csv. Файл представляет собой временной ряд ежедневных данных с несколькими точками данных, связанными с каждой датой.

Когда я вручную открываю файл, даты открываются правильно, как формат даты dd/mm/yyyy. Однако, когда я открываю файл программно, даты до 12 числа каждого месяца открываются как mm/dd/yyyy, хотя формат остается dd/mm/yyyy(, например. 1 июля 1983 (07.01.1983 ), будет открыто как 7 января 1983 (01.07.1983)-это не просто проблема форматирования, юлианская дата (дней с 1 января 1901 года ), связанные с этими датами, также изменяются ), и даты после 12-го числа каждого месяца открываются правильно, хотя и в виде текста, а не даты.

Данные, поступающие в виде текста, не являются проблемой, однако изменение дат при открытии файла вызывает проблемы. Я мог бы попытаться импортировать весь файл.csv в виде текста с разделителями-запятыми, а не открывать файл, однако было бы проще и быстрее, если бы я мог предотвратить изменение дат при открытии файла.

У кого-нибудь была похожая проблема в прошлом? Любые советы по этому поводу будут высоко оценены.
Привет, Бен.

Flder = InputBox("Copy and Paste Folder path here:")

Set FSO = CreateObject("Scripting.FileSystemObject")
Set SourcePath = FSO.GetFolder(Flder)

For Each File In SourcePath.Files        
    Workbooks.Open (File)

    FlNm = File.Name

    StrtCol = Workbooks(FlNm).Worksheets(1).Range(Cells(4, 1), Cells(4, 30)).Find ("Mean").Column

    Workbooks(FlNm).Worksheets(1).Range(Cells(1, 1), Cells(60000, 1)).Copy (Workbooks("Find Water Years V2.xls").Worksheets(1).Range("A3"))
    Workbooks(FlNm).Worksheets(1).Range(Cells(1, StrtCol), Cells(60000, StrtCol + 1)).Copy (Workbooks("Find Water Years V2.xls").Worksheets(1).Range("B3"))

    Workbooks(FlNm).Close
Next

Проблема возникает в строке Workbooks.Open (File ). Извините, что не бросил это с самого начала.

6
задан Cœur 29 November 2019 в 12:18
поделиться