» »

Excell klicanje makrota z različnimi gumbi

Excell klicanje makrota z različnimi gumbi

JankoK ::

Živjo, zanima me kako bi lahko v excelu klical en spisan makro z različnih gumbov in sicer zaenkrat mi uspe samo z enim gumbom:

Primer:
With ActiveSheet.Shapes("Drop Down 1").ControlFormat
vIzbraniPredmet = .List(.Value)

'MsgBox (vIzbraniPredmet) - ImePrveDatoteke

Ta koda je del makrota, in deluje samo pri enem gumbu za dropdown 1, jaz bi pa rad to naredil na več gumbov še za dropdown 2 ter 3 v isti kodi. Torej da bi nekako ob kliku na gumb 2 ter gumb 3 prikazalo "Drop down 2" ter "Drop down 3".

Primer:
Ob kliku na gumb 2 (Koda ne deluje na tak način in je samo kot primer ker bi rad izvedel kako zapisat)
With ActiveSheet.Shapes("Drop Down 1").ControlFormat
ActiveSheet.Shapes("Drop Down 2").ControlFormat
ActiveSheet.Shapes("Drop Down 3").ControlFormat
vIzbraniPredmet = .List(.Value)

'MsgBox (vIzbraniPredmet) - bi izpisal vsebino "Drop Down 2" (ImedrugeDatoteke).
  • spremenil: JankoK ()

darkolord ::

V kateri rutini pa imaš to?

JankoK ::

Macro je napisan v Microsoft visual basic for applications (VBA) znotraj excella

JankoK ::

Pozna mogoče kdo kakšno rešitev?

Zaenkrat mi pride na misel samo kopiranje macrotov ter spreminjanje spremenljivk, vendar na koncu bom imel ogromno macrotov za vsak gumb.

darkolord ::

V kateri rutini/metodi/funkciji maš napisano zgornjo kodo?

JankoK ::

Napisano imam v SUB funkciji(primer: Sub imemakrota() ter spodaj koda) če sem prav razumel kar me sprašuješ. Ali je kakšna druga rutina ?

darkolord ::

Nekje imaš potem verjetno nastavljeno, da ti ob kliku na Gumb1 požene imemakrota()?

JankoK ::

ja tako je, ko kliknem na gumb1 mi požene makro -
Run "imemakrota()"
. Vendar če poženem makro v gumbu2 bo koda enaka in se bo obnašal enako kot prvi gumb, torej bo še vedno gledal dropdown1.

darkolord ::

Kje točno pa imaš to Run "imemakrota()"?

JankoK ::

To funkcijo kličem z klikom na gumb, spisan imam macro imemakrota() ki ga s klikom na gumb kličem in požene imemakrota() ki deluje samo z prvim "dropdown 1".

tole je skopiran makro gumba:

Sub Button95_Click()
'
' Button95_Click Macro
'
Run "imemakrota()"
End Sub

Zgodovina sprememb…

  • spremenil: JankoK ()

darkolord ::

OK,

imemakrota() spremeni, da bo takole:
Sub imemakrota(gumb As Integer)


Potem pa za vsak gumb narediš takole:
Sub Button95_Click()
    imemakrota 1
End Sub


Za drugi gumb daš številko 2, za tretjega 3 itd.

V imemakrota pa potem enostavno preveriš spremenljivko "gumb", lahko z if stavkom ali pa takole:
    Select Case gumb
        Case 1
            ' prvi gumb
        Case 2
            ' drugi gumb
    End Select

Zgodovina sprememb…

  • spremenilo: darkolord ()

JankoK ::

Super! to je to kar sem iskal! zdaj dela kot mora, hvala!


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

C# povezava forma in classa

Oddelek: Programiranje
172364 (1827) Miko55
»

ASP.NET (C#) - Pomoč

Oddelek: Izdelava spletišč
131132 (909) Denisj
»

Calc/excel delo s tabelo

Oddelek: Programiranje
131467 (1234) salabajs
»

Akcije nad grafiko v VB

Oddelek: Programiranje
81278 (1091) damijani
»

Visual Basic in Excel

Oddelek: Programiranje
262689 (2255) Vesoljc

Več podobnih tem