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

Вход

Регистрация

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

 

= Мир MS Excel/Закрытие InputBox крестиком или Отмена приводит к ошибке - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Закрытие InputBox крестиком или Отмена приводит к ошибке (Макросы/Sub)
Закрытие InputBox крестиком или Отмена приводит к ошибке
TD_MElec Дата: Понедельник, 26.10.2020, 20:19 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 39
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Много искал, и впринципе информация есть, но мне нехватает знаний :(. Ни как не получается решить проблему с InputBox, в случаях когда пользователь нажимает "Отмена", либо крестик, либо вводит не верное значение.
Код:


Пока дошел только до этого. Здесь вообще не понимаю. Ведь лонг должен дать ошибку в случае, если не целое число, а он пропускает и дальше округляет до целого и все работает.

Но здесь только 0 и всё. Закрытие отменой либо крестиком, приводит к ошибке, как и ввод текстовых значений.
Прошу помочь, чтоб работало и красиво было :)


Сообщение отредактировал TD_MElec - Понедельник, 26.10.2020, 20:22
 
Ответить
СообщениеДобрый день.
Много искал, и впринципе информация есть, но мне нехватает знаний :(. Ни как не получается решить проблему с InputBox, в случаях когда пользователь нажимает "Отмена", либо крестик, либо вводит не верное значение.
Код:


Пока дошел только до этого. Здесь вообще не понимаю. Ведь лонг должен дать ошибку в случае, если не целое число, а он пропускает и дальше округляет до целого и все работает.

Но здесь только 0 и всё. Закрытие отменой либо крестиком, приводит к ошибке, как и ввод текстовых значений.
Прошу помочь, чтоб работало и красиво было :)

Автор - TD_MElec
Дата добавления - 26.10.2020 в 20:19
nilem Дата: Понедельник, 26.10.2020, 20:27 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1587
Репутация: 548 ±
Замечаний: 0% ±

Excel 2013, 2016
типа такого:
[vba]
Код
Sub tttt()
Dim ColumnIns As Long
ColumnIns = Application.InputBox("Укажите номер столбца для вставки данных.", "Запрос данных", 1, , , , , 1)
If ColumnIns = 0 Then Exit Sub 'нажали Отмена
MsgBox "номер столбца: " & ColumnIns, 64
End Sub
[/vba]
Если введено десятичное число, то Long да, округляет до целого.
Ну т.е. пользователь ввел номер столбца 4,8. Ладно, пусть будет 5 )


Яндекс.Деньги 4100159601573

Сообщение отредактировал nilem - Понедельник, 26.10.2020, 20:29
 
Ответить
Сообщениетипа такого:
[vba]
Код
Sub tttt()
Dim ColumnIns As Long
ColumnIns = Application.InputBox("Укажите номер столбца для вставки данных.", "Запрос данных", 1, , , , , 1)
If ColumnIns = 0 Then Exit Sub 'нажали Отмена
MsgBox "номер столбца: " & ColumnIns, 64
End Sub
[/vba]
Если введено десятичное число, то Long да, округляет до целого.
Ну т.е. пользователь ввел номер столбца 4,8. Ладно, пусть будет 5 )

Автор - nilem
Дата добавления - 26.10.2020 в 20:27
Pelena Дата: Понедельник, 26.10.2020, 20:35 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16817
Репутация: 3623 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
или можно так
[vba]
Код
Dim ColumnIns
ColumnIns = InputBox("Укажите номер столбца для вставки цены.")
If Not IsNumeric(ColumnIns) Then Exit Sub
ColumnIns = Int(ColumnIns)
[/vba]


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
Сообщениеили можно так
[vba]
Код
Dim ColumnIns
ColumnIns = InputBox("Укажите номер столбца для вставки цены.")
If Not IsNumeric(ColumnIns) Then Exit Sub
ColumnIns = Int(ColumnIns)
[/vba]

Автор - Pelena
Дата добавления - 26.10.2020 в 20:35
TD_MElec Дата: Понедельник, 26.10.2020, 21:26 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 39
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
nilem, PelenaСпасибо большое за ответы :)

nilem, Ваш вариант работает, но при нем рабочая таблица "пропадает", понятно дело тут нет ничего страшного, но это может испугать пользователя :)


Использую это:


Сообщение отредактировал TD_MElec - Понедельник, 26.10.2020, 21:27
 
Ответить
Сообщениеnilem, PelenaСпасибо большое за ответы :)

nilem, Ваш вариант работает, но при нем рабочая таблица "пропадает", понятно дело тут нет ничего страшного, но это может испугать пользователя :)


Использую это:

Автор - TD_MElec
Дата добавления - 26.10.2020 в 21:26
boa Дата: Суббота, 31.10.2020, 03:28 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 499
Репутация: 148 ±
Замечаний: 0% ±

2013, 365
Здравствуйте, TD_MElec
рабочая таблица "пропадает"

данное отображение может быть вызвано, только отключением обновления экрана(ScreenUpdating). Либо не выключайте, либо включите вовремя ))


 
Ответить
СообщениеЗдравствуйте, TD_MElec
рабочая таблица "пропадает"

данное отображение может быть вызвано, только отключением обновления экрана(ScreenUpdating). Либо не выключайте, либо включите вовремя ))

Автор - boa
Дата добавления - 31.10.2020 в 03:28
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Закрытие InputBox крестиком или Отмена приводит к ошибке (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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