У мене є чимало даних, коли його дата / часова мітка була імпортована в excel як текст. Excel насправді не визнає це датою з часом. напр., 25.08.2011 16:17:59 (мм.дд.р. гг: мм: сс)
Тепер мені потрібно перетворити його на дату з часом, щоб його можна було використовувати для подальшого обчислення за допомогою excel.
Як я можу це зробити? Поточний спосіб вирішення - це "повторне введення" матеріалів. Значить, якщо натиснути на клітинку, щоб активувати "редагування", і натиснути просто повернутись, то воно автоматично перетворюється Excel у час дати. Я можу автоматизувати матеріал за допомогою макросу VBA нижче, але, хоча у мене досить великий діапазон понад 30 000, це займає тривалий час, і ви не можете змінити вікно / програму в середній час, оскільки воно працює через gui.
Set c = Range("A1").Cells
c.Select
For row = c.row To 30000
SendKeys "{F2}", True
SendKeys "{ENTER}", True
Next row
Будь-які інші пропозиції, як автоматизувати цей матеріал набагато швидше? Я вже спробував інші можливості, але не вийшло:
- змінити формат комірки на дату за допомогою спеціального формату mm.dd.yyyy hh: mm: ss - значення комірки не автоматично перетворюється на дату
- використовуючи формулу DATEVALUE (String): значення конвертується, але воно просто перетворює дату і час втрачається, наприклад, 25.08.2011 00:00:00 (mm.dd.yyyy hh: mm: ss)
- використовуючи формулу TIMEVALUE (String), значення конвертується, але воно просто перетворює час і дату втрачається, наприклад, 00.00.1900 16:17:59 (mm.dd.yyyy hh: mm: ss)
використовуючи функцію VBA " Format () ", наприклад, значення отримує зміну формату, але все-таки після цього розпізнається як текст, наприклад
Dim myVar як String myVar = Формат (cell.value, "dd / mm / yyyy hh: nn: ss")
- використовуючи макрос VBA з cell.FormulaR1C1 = "25.08.2011 16:17:59", але він також не працює. значення зберігається як текст
Спасибі за вашу допомогу
DATEVALUE(String)+TIMEVALUE(String)
?