ПредишенСледващото

Хората, които имам форма, например, с 3 бутона. Имам нужда да се симулира програмно ги натискате, но аз не искам да го направя индивидуално за всеки бутон, което води до кода: .. Избери всички наричаме CommandButton1_Click и т.н., и преминаване на името на контрола в като параметър към определена функция. Въпросът е как да тече самото събитие кликнете върху бутона. Аз разбирам, че тя трябва да бъде нещо като призив за обратно повикване, но как да го организират, за да изберете намерен. Ако това не е възможно, тъй като на VBA, тогава може би има начин чрез API-разговор? Prompt.

Напълно забравих за Кодекса: Избери всички Application.Run
След като прочетох за него, но той никога не се използва. Така че проблемът е решен. Въпреки объркването си остава: Има ли друг начин да се симулира случай обект (в моя случай - един бутон), знаейки, че името му? Нещо като Raise, но в добрия смисъл

Изпълнете-то се изпълнява, но неочаквано се блъсна в проблем повикване Лично процедура лежи под формата на код, процедурата намира в друг модул: Код: Избери всички Application.Run # 40; "UserForm1.CommandButton1_click" # 41;
за съжаление, той не работи

Направете този модул Публично-процедура-наричайки eplikeyshn рани и от други модули, за да се позове на тази процедура

Програмиране - избран Божията дисциплина! Ако Бог е, а след това на Вселената, той е събрал, а не по друг начин.

За съжаление, CommandButton1 (особено при UserForm1) няма метод CommandButton1_Click (само да се движите, SetFocus, ZOrder nekskolko и скрити), така че по този начин: Код: Избери всички CallByName UserForm1.CommandButton1, "Click", VbMethod. така: Код: Избери всички CallByName UserForm1.CommandButton1 "CommandButton1_Click", VbMethod. така: Код: Избери всички CallByName UserForm1 "CommandButton1_Click", VbMethod - всичко същото на - съобщение за грешка: "Обектът не поддържа това свойство или метод (Error 438)"

и ако въведете код за формата и промяна
Код: Избери всички Private Sub CommandButton1_Click # 40; # 41;
за
Код: Избери всички Public Sub CommandButton1_Click # 40; # 41;
че по този начин
Код: Избери всички Call UserForm1.CommandButton1_Click всичко ще бъде шоколад

Да, и така ще работи
Код: Избери всички CallByName UserForm1 "CommandButton1_Click", VbMethod

Имам девет живота имате такъв Само
МИСЛЯ!

Подкрепете проекта - споделете линка, благодаря!