Страницы: 1
RSS
Один макрос на 17 кнопок в столбце, возможно ли?
 
Здравствуйте, помогите пожалуйста! Записал макрос кликов для кнопки М на листе “KNOPKI” и
вставки данных в таблицу на листе “TABLICA” в зависимости от того какой переключатель выставлен 1Т или 2Т.
Помогите пожалуйста подкорректировать макрос так, чтобы каждая следующая кнопка М относящаяся к
игроку вставляла данные соответствующие этому игроку в таблице. Кнопок
будет 306, так что, по моему, 17 макросов (один на каждый столбец) лучше чем
306 макросов (на каждую кнопку).
 
red7ko, смотрите личку.
 
red7ko, а можно же просто 1 кнопку...правда логику нужно понять, а еще послушать дядю модератора)
Не бойтесь совершенства. Вам его не достичь.
 
Цитата
Mershik написал:
послушать дядю модератора
Всё нормально )
А логику я тоже не понял.
 
Цитата
Mershik написал:
послушать дядю модератора
Очень интересно, кто у него дядя?!!! :D
Изменено: БМВ - 31.03.2020 20:40:32
По вопросам из тем форума, личку не читаю.
 
Логика в том чтобы считать действия игроков одним кликом.
 
Что то не совсем понятно, но мне кажется двойной клик по ячейке даст результат лучше чем куча кнопок.
По вопросам из тем форума, личку не читаю.
 
БМВ,
Цитата
БМВ, написал:
кто у него дядя?
предположим, что очень влиятельный человек)

Redjko,  ну вы бы описание сделалии, что нужно взять отсюда поставить сюда и когда это нужно сделать.
Не бойтесь совершенства. Вам его не достичь.
 
Когда анализирую игру в живую есть время только на один клик по большой кнопке.
 
Цитата
Redjko написал:
считать действия игроков одним кликом.
Redjko, всегда человек, решающий СВОЮ задачу, понимает её. И зачастую ему кажется, что и для посторонних всё очевидно. Но это не всегда так )
Вот уже три человека не могут Вас понять. Делайте вывод )
 
Цитата
red7ko написал:
Один макрос на 17 кнопок в столбце, возможно ли?
возможно
VBA не ограничивает количество кнопок на один макрос,
на сколько это дружит со здравым смыслом - это другой вопрос, но он не имеет отношения к работоспособности всех этих 17 кнопок точнее того макроса на который они навешены.
Изменено: Ігор Гончаренко - 31.03.2020 21:00:13
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Макрос вешал только на первую кнопку, остальные просто скопировал для наглядности, чтобы была понятна структура.  
 
Цитата
Redjko написал:
Когда анализирую игру в живую есть время только на один клик по большой кнопке.

Я правильно понимаю что при этом это клик по одной из 306 кнопок . Я уже хочу с вами познакомится  и сфоткаться на память.

По вопросам из тем форума, личку не читаю.
 
Поняли правильно. Можно сократить до 187 на 11 игроков. Из вашего комментария понял что схема не работоспособная. Так? Просто знаний по этой теме у меня мало.
 
Redjko, Если говорить о первично поставленном вопросе, то все возможно. Один макрос, который использован на всех кнопках, может определить кто его вызвал, а по расположению кнопки понять к какой строке и столбцу это относится, но сами подумайте, при таком количестве, сколько вы ошибок на кликаете.
Изменено: БМВ - 31.03.2020 21:51:18
По вопросам из тем форума, личку не читаю.
 
Это дело привычки. Могут кликать несколько человек. А с тачскрином жать пальцами , а не ЛКМ.
 
Все короче в коде и он один на все кнопки. а вот количество кнопок просто бесит.
Код
Sub B_1()
Set clickcell = ActiveSheet.Shapes(Application.Caller).TopLeftCell
With Worksheets("TABLICA").Cells(clickcell.Row, clickcell.Column * 2 - 3 + Range("A2"))
        .Value = .Value + 1
End With
End Sub
Изменено: БМВ - 31.03.2020 22:32:56
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
количество кнопок просто бесит
Глубокий вдох Глубокая затяжка  :)
 
Цитата
Юрий М написал:
Глубокая затяжка
Дяде привет  :D
По вопросам из тем форума, личку не читаю.
 
Класс! Огромное спасибо! Только можно при клике оставить ячейки с данными активными, как в оригинале, чтобы была возможность откатиться на один шаг.
 
Ну добавьте
Код
Sub B_1()
Application.ScreenUpdating = False
Set clickcell = ActiveSheet.Shapes(Application.Caller).TopLeftCell
With Worksheets("TABLICA").Cells(clickcell.Row, clickcell.Column * 2 - 3 + Range("A2"))
        .Value = .Value + 1
        Worksheets("TABLICA").Activate
        .Activate
End With
clickcell.Parent.Activate
Application.ScreenUpdating = True
End Sub
Изменено: БМВ - 31.03.2020 23:28:37
По вопросам из тем форума, личку не читаю.
 
Выкидывает ошибку "Метод Activate из класса Range завершён неверно.
 
изменил выше, но дерготня будет, при перерисовке этих кнопок.
По вопросам из тем форума, личку не читаю.
 
Дерготню переживу :) Для меня высший класс! Спасибо!
 
так получше будет.
Изменено: БМВ - 01.04.2020 08:09:07
По вопросам из тем форума, личку не читаю.
 
Похоже, что это для статистики футбольного матча.
 
Скучно медведю в берлоге.
Кнопки убрал, визуализацию добавил.
Изменено: БМВ - 01.04.2020 11:23:41
По вопросам из тем форума, личку не читаю.
Страницы: 1
Наверх