Я пробовал каждый подход, который я знаю, но мне не удалось установить значение ячейки с его датой. Я подозреваю, что есть крошечная проблема, но я не знаю, где.Заполнить значение ячейки с отформатированной датой, возвращаемой функцией
Function getDates(strDateString) As Date
Dim x As Variant
x = Split(strDateString, "/")
If UBound(x) = 2 Then
strday = x(2)
strMonth = x(1)
strYear = x(0)
Else
strYear = Mid(strDateString, 1, 4)
strMonth = Mid(strDateString, 6, 2)
strday = Mid(strDateString, 8, 2)
End If
getDates = DateSerial(strYear, strMonth, strday)
End Function
For k = 11 To 12
strdates = getDates(Cells(2, k).Value)
Set Worksheets(strNewSheetName).Range(Cells(1, k), Cells(1, k)).Value = CStr(strdates)
MsgBox (strdates)
Next k
MsgBox
возвращает правильную дату, но значение всегда остается пустым! Я попытался преобразовать его в строку с каждым из этих методов:
cells(r,c).value
CSTR(strDates)
cdate()
Но ни один из них не работал.
Я попробовал его с набором, без набора, всегда значение пусто! –
В моих тестах, если у меня есть «Set», я получаю ошибку «ошибка времени выполнения». Можете ли вы показать больше своего кода? То, что у вас там, не будет компилироваться самостоятельно. Петля вне любой функции – Sobigen