Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как назначить переменную на default в application.Inputbox? - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как назначить переменную на default в application.Inputbox? (Макросы/Sub)
Как назначить переменную на default в application.Inputbox?
Amon Дата: Пятница, 20.04.2018, 11:41 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день уважаемые форумчане.
Можно ли с использованием application.inputbox вывести в форме для ввода данных значение текущей даты по умолчанию ? Или для этого нужно как-то писать UserForm ? Просто с юзер форм вообще не работал ниразу для меня это темный лес(
Чтобы если нужно было, установить свою дату , а по стандарту дата ставилась по умолчанию системная, в формате дд.мм.гггг чч:мм .
 
Ответить
СообщениеДобрый день уважаемые форумчане.
Можно ли с использованием application.inputbox вывести в форме для ввода данных значение текущей даты по умолчанию ? Или для этого нужно как-то писать UserForm ? Просто с юзер форм вообще не работал ниразу для меня это темный лес(
Чтобы если нужно было, установить свою дату , а по стандарту дата ставилась по умолчанию системная, в формате дд.мм.гггг чч:мм .

Автор - Amon
Дата добавления - 20.04.2018 в 11:41
nilem Дата: Пятница, 20.04.2018, 12:43 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Amon, привет
попробуйте
[vba]
Код
Sub ttt()
Dim dt As Date
dt = Application.InputBox("Введите дату", "Ввод даты", Format(Now, "dd.mm.yyyy hh:nn"))
MsgBox dt
'ActiveCell = dt
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеAmon, привет
попробуйте
[vba]
Код
Sub ttt()
Dim dt As Date
dt = Application.InputBox("Введите дату", "Ввод даты", Format(Now, "dd.mm.yyyy hh:nn"))
MsgBox dt
'ActiveCell = dt
End Sub
[/vba]

Автор - nilem
Дата добавления - 20.04.2018 в 12:43
Amon Дата: Пятница, 20.04.2018, 13:51 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
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]
 
Ответить
Сообщение
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]

Автор - Amon
Дата добавления - 20.04.2018 в 13:51
nilem Дата: Пятница, 20.04.2018, 14:49 | Сообщение № 4
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Да, проверка, конечно, нужна:
[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

MsgBox dt
'ActiveCell = dt
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеДа, проверка, конечно, нужна:
[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

MsgBox dt
'ActiveCell = dt
End Sub
[/vba]

Автор - nilem
Дата добавления - 20.04.2018 в 14:49
Amon Дата: Пятница, 20.04.2018, 17:17 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Да, проверка, конечно, нужна:

Спасибо, благодаря вам теперь все работает как нужно)
 
Ответить
Сообщение
Да, проверка, конечно, нужна:

Спасибо, благодаря вам теперь все работает как нужно)

Автор - Amon
Дата добавления - 20.04.2018 в 17:17
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как назначить переменную на default в application.Inputbox? (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!