Я пытаюсь выполнить простые задачи с типом даты, но то, что я получаю, не то, что я хочу. Я хотел бы разделить значение ячейки с разделителем и вернуть значения строки методу DateValue.Дата создания VBA со строками
Мой код
Dim str2() As String
str2() = Split(Cells(ActiveCell.Row, 7).Value, ".")
Dim date1 As Date
date1 = DateValue(str(0) & "-" + str(1) & "-" & str(2))
То, что я пытаюсь сделать, это получить некоторый конкретный формат даты. Дата в ячейке формируется следующим образом: 26.05.14 (day.month.year), и я хочу иметь формат, подобный этому 2014-05-26 (год-месяц-день). Это все. Метод DateValue возвращает мне дату 2000-01-02. Я не знаю, как я могу посмотреть в массив str2(), чтобы узнать, какие значения существуют после метода Split. Как я могу это сделать ?
Кажется, что VBA полностью отличается от VB.NET ... У меня нет опыта с VBA. Thanks
Что такое «Ячейки (ActiveCell.Row, 7). Возвращение? Можете ли вы попробовать: 'date1 = CDate (Replace (Cells (ActiveCell.Row, 7) .Value,". ","/"))' –
Как я могу проверить, что возвращает 'Cells (ActiveCell.Row, 7). Ценность? Когда я указываю на мышь выше 'str2()', это не подсказывает мне ничего после выполнения метода Split. С другой стороны, когда я пытаюсь увидеть его значения следующим образом: 'Dim strCheck1 As String strCheck1 = str2 (0)' он дает мне ошибку компиляции «Подзаголовок вне диапазона» –
'date1 = CDate (Replace (Cells (ActiveCell) .Row, 7) .Value, ".", "/")) 'Дает мне ошибку« Тип несоответствия ». –