Добрый день уважаемые форумчане. Можно ли с использованием application.inputbox вывести в форме для ввода данных значение текущей даты по умолчанию ? Или для этого нужно как-то писать UserForm ? Просто с юзер форм вообще не работал ниразу для меня это темный лес( Чтобы если нужно было, установить свою дату , а по стандарту дата ставилась по умолчанию системная, в формате дд.мм.гггг чч:мм .
Добрый день уважаемые форумчане. Можно ли с использованием application.inputbox вывести в форме для ввода данных значение текущей даты по умолчанию ? Или для этого нужно как-то писать UserForm ? Просто с юзер форм вообще не работал ниразу для меня это темный лес( Чтобы если нужно было, установить свою дату , а по стандарту дата ставилась по умолчанию системная, в формате дд.мм.гггг чч:мм .Amon
Спасибо огромное это то что мне нужно было. ) Только почему-то у меня проверку не могу нормально написать ошибку выдает. Ну если пустое или буквы [vba]
Код
Dim OutDate As Date Dim rCel As Range Set rCel = Range("C2") OutDate = Application.InputBox("Введите дату и время", "Ввод даты и времени тестирования", Format(now, "dd.mm.yyyy hh:nn")) If OutDate = "" Then Exit Sub
Else rCel.Value = OutDate Call MsgBox("Введите реальную дату и время", vbCritical + vbOKOnly, "Только дата и время") End If
Спасибо огромное это то что мне нужно было. ) Только почему-то у меня проверку не могу нормально написать ошибку выдает. Ну если пустое или буквы [vba]
Код
Dim OutDate As Date Dim rCel As Range Set rCel = Range("C2") OutDate = Application.InputBox("Введите дату и время", "Ввод даты и времени тестирования", Format(now, "dd.mm.yyyy hh:nn")) If OutDate = "" Then Exit Sub
Else rCel.Value = OutDate Call MsgBox("Введите реальную дату и время", vbCritical + vbOKOnly, "Только дата и время") End If
Sub ttt2() Dim dt As Date On Error Resume Next: Err.Clear dt = Application.InputBox("Введите дату", "Ввод даты", Format(Now, "dd.mm.yyyy hh:nn")) If dt = 0 Then MsgBox "Дата не выбрана. Выходим из процедуры.", 64 Exit Sub End If On Error GoTo 0 MsgBox dt 'ActiveCell = dt End Sub
[/vba] Если нужно заставить (что не демократично )) пользователя ввести дату, то [vba]
Код
Sub NonDemocratic() Dim dt As Date On Error Resume Next: Err.Clear Do dt = Application.InputBox("Введите дату", "Ввод даты", Format(Now, "dd.mm.yyyy hh:nn")) If dt = 0 Then MsgBox "Nicht", 64 Loop While dt = 0 On Error GoTo 0
MsgBox dt 'ActiveCell = dt End Sub
[/vba]
Да, проверка, конечно, нужна: [vba]
Код
Sub ttt2() Dim dt As Date On Error Resume Next: Err.Clear dt = Application.InputBox("Введите дату", "Ввод даты", Format(Now, "dd.mm.yyyy hh:nn")) If dt = 0 Then MsgBox "Дата не выбрана. Выходим из процедуры.", 64 Exit Sub End If On Error GoTo 0 MsgBox dt 'ActiveCell = dt End Sub
[/vba] Если нужно заставить (что не демократично )) пользователя ввести дату, то [vba]
Код
Sub NonDemocratic() Dim dt As Date On Error Resume Next: Err.Clear Do dt = Application.InputBox("Введите дату", "Ввод даты", Format(Now, "dd.mm.yyyy hh:nn")) If dt = 0 Then MsgBox "Nicht", 64 Loop While dt = 0 On Error GoTo 0