Lep pozdrav.
Spet imam nekaj vprašanj. Problem imam naslednji.
Na delu lista imam več (tudi 100 ) kvadratnih celic, v katere vpisujem po en sam znak. V VBA kodi pa označujem te celice tako,
da nekatere "obkrožim" s krogi različnih barv.
Zdaj znam v VBA kodi ustvarit obliko - oval in ji določiti prave vrednosti ( barvo, prosojnost, pozicijo, vežem obliko na celico, priredim makro, ).
Ostajajo mi pa naslednji problemi:
1. Dokler je celica v Edit modu, z miško ne morem "pritisniti" gumba na listu. Razumljivo.
Ker pa v nekatere celice vnašam en sam znak, bi rad po vpisu prvega znaka forsiral tipko "Tab". Se to da narediti?
2. Tam, kjer je na listu narisana oblika ne morem izbrati spodaj ležeče celice. Oblika (oval) je prosojna.
Rešujem se z makri - Na obliko krog vežem makro, v makru pa naredim select na spodnjo celico. Problem je pa v številu oblik in s tem makrov.
Imam idejo, da uporabim en sam makro, ne vem pa če je možno:
- ali lahko v makru ugotovim kateri oval ga je zagnal:
- kako ugotoviti katera celica je na poziciji ovala.
Oziroma,
- ali se lahko v VBA vprašam Katera celica je na poziciji (x,y) - pozicija ovala
- ali se lahko v VBA ( v makru) vprašam, na kateri poziciji je miška
Upam, da moje želje niso preveč abstraktne.
ps. O oblikah sem že spraševal v poglavju Excel, vendar je tema VBA.
Hvala za vaš trud.
lep pozdravljeni,
Drago
Krmiljenje (vnosa) v BA
Re: Krmiljenje (vnosa) v BA
Pozdravljeni,
Da, z uporabo WINApi funkcij
Trenutno se ne spomnim načina, da bi to naredil...dragopre napisal/-a:...Ker pa v nekatere celice vnašam en sam znak, bi rad po vpisu prvega znaka forsiral tipko "Tab". Se to da narediti?...
Da, vsaka celica ima lastnosti Top in Left in tako lahko ugotovite kje točno se nahajadragopre napisal/-a:...ali se lahko v VBA vprašam Katera celica je na poziciji (x,y) - pozicija ovala...
dragopre napisal/-a:...ali se lahko v VBA ( v makru) vprašam, na kateri poziciji je miška...
Da, z uporabo WINApi funkcij
Koda: Izberi vse
Option Explicit
Public Type POINTAPI
x As Long
y As Long
End Type
Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Sub KjeJeMiska()
Dim lngCurPos As POINTAPI
GetCursorPos lngCurPos
Debug.Print "X = " & lngCurPos.x & ", " & "Y = " & lngCurPos.y
End Sub
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Re: Krmiljenje (vnosa) v BA
Res lepa hvala, za hiter odgovor.
Drago
Drago