[ necca1 @ 07.09.2018. 13:55 ] @
Danima već pokušavam da napravim nešto što bi ličilo na semafor za stoni tenis. Na poslu pikamo stoni tenis ali kad igrači zapadnu u euforiju uglavnom ne mogu da se sete rezultata. Moja ideja je da napravim nesto gde bi se pritiskom na tastere npr. L i D ( levi i desni ) smenjivali brojevi i tako pratili rezultat. Brojevi bi trebali da idu do 21.

Ako neko ima neku ideju molio bih da pomogne, pošto ja predstavu nemam ni kako bih počeo da radim ovo o čemu sam pisao.

Hvala
[ bokinet @ 07.09.2018. 14:56 ] @
Trebalo da moze preko VBA i makroa da se to odradi i povezivanjem sa 'Forms Controls - button' koje bi se postavile na sheet u file-u. Takodje treba napraviti lookup tj. hook koji ce da slusa ako se pritisnu levi i desni taster misa na globalnom nivou MS Excel i da tada 'okine' kod koji je ustvari VBA / macro a koji bi se isto dodeli ovim dugmicima tj. 'button'-ima.


MS Excel nema direktnu podrsku za KeyPress i za MouseUp, MoseMove, MouseDown dogadjaje kao sto postoji podrska za 'Form Controls' i VB kontrole.
Jedino da se preko API f-ja i subclass odradi nesto.

Dole imate parce koda koje se odnosi na Sheet class object u VBA za odredjene dogadjaje koji se okidaju a koji bi mozda mogli da tako nesto odrade.

Na double click, na right click i na SelectionChange se okidaju i na odredjena polja u Sheet-u se upisuje neki foo tekst.

Takodje moze se napraviti i dodati kao sto vec napisah gore, Form Controls button tj. VB button i na click event dodati makro tj. kod koji ce nesto odraditi (na primer upisati vrednost u polje).

Code:


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    
    Cells(2, 5) = "Double Click has been made on " & Now
    
End Sub
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    
    Cells(4, 5) = "Right Click has been made on " & Now
    
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    Cells(6, 5) = "Selection has been changed " & Now
    
End Sub





[Ovu poruku je menjao bokinet dana 07.09.2018. u 16:09 GMT+1]
[ necca1 @ 10.09.2018. 08:08 ] @
Bokinet hvala na trudu i ideji , ali ja nešto ovo nisam uspeo da pokrenem.

Samo, da li je neko možda mišljenja da bih ovo trebao da probam u nekom drugom programu. Možda bi bilo jednostavnije. Googlao sam ali nisam uspeo da pronađem ništa ni slično. Znači, trebalo bi da ekran bude podeljen vertikalno na dva dela i pritiskom na određene tastera da se smenjuju brojevi od 1 do 21.

Svaka ideja je dobrodošla.


Hvala
[ bokinet @ 10.09.2018. 17:07 ] @

Najbolje i najlakse je u VB6 a moze i u VB.NET.

VB6 je slican kao VBA tj. 99% isti samo sto u njemu imate mogucnosti da pravite Win32 app bez problema. Tu vec imate podrzano sve sto vam treba :)

U prilogu imate primer koda u VB6 ako sam vas dobro razumeo kao i u nastavku screenshot kako izgleda app kad se pokrene iz VB ili kao samostalna kompajlirana aplikacija.

Ovo je samo primer.

[ necca1 @ 12.09.2018. 13:18 ] @
Jeste, to je ono na šta sam mislio. Sada samo da se obučim za rad na VB i sređeno.
Hvala najlepše.
Sada znam u kom pravcu da idem.
[ bokinet @ 12.09.2018. 13:58 ] @
To je samo primer koji treba razraditi do nivoa potrebe.
Ziveli i svako dobro.