Подскажите пожалуйста как в VBA excel приостановить выполнение кода и ждать выделения одной ячейки. Необходимо что бы при нажатии созданной кнопки на листе excel выводилась надпись "выделите левую верхнюю ячейку" и система ждала выделения одной ячейки (один клик левой копки мыши на нужной ячейки) и после чего переменным а и б (к примеру) соответственно присваивался номер строки и столбца. Пример: 1. Нажали созданную кнопку на листе excel увидели надпись "выделите левую верхнюю ячейку" 2. Нажали один раз левой кнопки мыши на нужной ячейки листа excel, к примеру на ячейку "С12" 3. Получили переменную а равную 12 (12 строка) и переменную б равную 3 (так как С это третий столбец) и продолжение работы программы. Заранее благодарен
Sub Test()
Dim Rng As Range
On Error Resume Next
Set Rng = Application.InputBox("Выделите левую верхнюю ячейку", "Выделите ячейку", Type:=8)
On Error GoTo 0
If Rng Is Nothing Then
MsgBox "Вы не выбрали ячейку!", vbExclamation, "Ошибка"
Exit Sub
End If
MsgBox "Человек выбрал ячейку: " & Rng.Address(0, 0), vbInformation, ""
End Sub
Сергей Иванов, у Вас два вопроса в одной теме, что не соответствует правилам форума. Но поскольку старожилы посчитали Вашу тему заслуживающей внимания, внесу и свою лепту:) 1.Первый и главный Ваш вопрос в теме - приостановка выполнения кода. Если макрос уже запущен, он просто обязан отработать, несмотря ни на какие кнопки (если внутри него не прописана возможность остановки). Либо его нужно разбить на два или более макросов, которые будут запускаться по отдельности. 2.Получить адрес ячейки можно другим макросом (в частности привязать на событие выделения ячейки в модуле листа (или макросом, привязанным к кнопке получить адрес активной ячейки и т.п. и т.д.) 3.Значение полученной переменной можно либо записать в ячейку (или ячейки) либо как Вы хотите в переменные, и после этого запускать следующий макрос - т.е. оставшуюся часть программы. БМВ, , добрый, вечер! Полностью с Вами согласен. Лингвист (филолог, историк, биолог, ботаник - подставить нужное) не обязан владеть языками программирования, равно как и программист не обязан владеть 50-ю разговорными иностранными языками или помнить процентное содержание химических элементов в низколегированных сталях
Правильно ли я понимаю, что организованные в ВУЗах обязательное изучение основ программирования для этих специальностей сделано просто для повышения зарплаты преподавателям, а так просто нафиг не кому не нужно?
off Андрей VG, думаю это они зря, а вот то что специалист должен быть сейчас уверенным пользователем ПК, который не встает в ступор при малейшем отступлении от алгоритма который ему показали (тыч сюда , сюда, а потом сюда) . Мог открыть встроенную справку как минимум и прочесть её, а не мне некогда я там ничего не понимаю сделайте чтоб .... , Просто из наболевшего: подчиненный мой приходит к одному из босов. "Скопируйте мне на ноутбук на рабочий стол в папку отдельную несколько файлов с сетевого диска." Я б наверно Сюрфейм бы об пол разбил и сказал "не нужнО оно вам , ненужнО."
Андрей VG написал: ВУЗах обязательное изучение основ программирования
да абсолютно бесполезный предмет, даже вредный, с моей точки зрения, так как отпугивает от компьютера и это касается не только ВУЗов но и школьной программы по информатике "основы компьютерной грамотности" а не программирование, вот что нужно преподавать, обьяснить что такое файлы и их типы, для чего нужна файловая система, проводник, познакомить с текстовым, графическим и возможно табличным редактором, немного рассказать об интернете. программирование нужно тем, кто решил связать свою жизнь с этим направлением человеческой деятельности
в теме много людей отметилось. автора только нету))