я это значение вставляется в ячейку «02-01-2013»VBA изменяет мое содержимое переменной
Range("C2").Offset(aPos, 0).NumberFormat = "dd/mm/yy;@"
Range("C2").Offset(aPos, 0).Value = forma(t1, 2, t2)
MsgBox forma(t1, 2, t2)
который командовать MsgBox там отображается правильно, так что строка правильно прибывающий в код, вызвать msgbox отображает это нормально, однако, когда вторая строка здесь выполняет свою работу, она записывает ее как «01-02-2013», обратите внимание на инверсию дня/месяца, я пробовал все и не могу понять, почему это происходит, я даже добавила 1-ю строку, чтобы форматировать формат, прежде чем получать данные, и до сих пор не повезло. Все поля ввода формируются правильно в формате dd/mm/yy.
Мне нужно это, чтобы я мог сделать вид, и так оно и есть, оно убивает меня.
Что такое тип данных и значение, возвращаемое из 'forma()'? –
он отклоняется, как этот Dim 'forma (от 1 до 20, от 1 до 3, от 1 до 40) как строка. Я использовал msgbox для просмотра содержимого с нескольких шагов, и во всех них он отображается правильно, только на этом последнем шаге он изменяется, и даже этот последний шаг отображается корректно на msgbox, но сохраняется в диапазоне с помощью mm/dd/aa вместо dd/mm/aa – Cachirro
... и значение, возвращаемое в вашем конкретном примере? –