2015-08-11 2 views
1

Один из моих столбцов Excel содержит следующие данные: 2/15/2011 2:00:00 AM. Мне нужно преобразовать его в две колонки: дату и время. Я пробовал Cdate, DateValue, левые функции все это дают ошибку несоответствия типа. Пожалуйста помоги.Как преобразовать текст Excel в дату и время

ответ

0

Чтобы преобразовать одну строку DateTime в 2 отдельных строк:

Public Sub splitDateTime() 

    Dim d As String, t As String 

    d = DateValue("2/15/2011 2:00:00 AM") 
    t = TimeValue("2/15/2011 2:00:00 AM") 

    MsgBox d '"2/15/2011" (result format varies based on Regional Settings) 
    MsgBox t '"2:00:00 AM" 

End Sub 

Чтобы преобразовать все ячейки в колонке, содержащей строки DataTime в 2 колонки, для заголовков, за исключением:

Option Explicit 

Public Sub splitDateTime() 
    Dim str As String, cel As Range, ws As Worksheet, lr As Long 

    Set ws = ActiveSheet 
    lr = ActiveSheet.UsedRange.Rows.Count 

    Application.ScreenUpdating = False 
    For Each cel In ws.Range("C1:C" & lr) 
     If cel.Row = 1 Then 
      With cel 
       .Value2 = "Date" 
       .Offset(0, 1).Value2 = "Time" 
      End With 
     Else 
      str = cel.Value2 
      With cel 
       .Value2 = Format(DateValue(str), "ddd, mmm dd yyyy") 
       .Offset(0, 1).Value2 = Format(TimeValue(str), "hh:mm:ss AmPm") 
      End With 
     End If 
    Next 
    ws.Range("C1:D" & lr).EntireColumn.AutoFit 
    Application.ScreenUpdating = True 
End Sub 
+0

Вот мой код и он все еще дает ошибку несоответствия типа. – Jlee

+0

Option Explicit Sub splitDateTime() Dim cvalue Dim curr_date As String Столбцы ("C"). Выберите cvalue = Столбцы ("C"). Value curr_date = DateValue (cvalue) MsgBox curr_date End Sub – Jlee

+0

Предоставляемый код должен показать вам пример того, как это сделать. Пожалуйста, отредактируйте свой вопрос, чтобы быть более конкретным, например «Мне нужно разделить все ячейки в столбце C от полного формата даты и времени на значение даты, чтобы оставаться в каждой ячейке в столбце C и времени в соответствующей ячейке в столбце D» –

Смежные вопросы