Pradėkite makrokomandą, kai įvykdoma „Excel“ lentelės sąlyga

Turinys

Galite naudoti triuką, kad paleistumėte makrokomandą, kai tik „Excel“ skaičiuoklės funkcija IF pateiks tam tikrą rezultatą

Makrokomanda turi būti vykdoma „Excel“ lentelėje, kai tik IF lentelės funkcija grąžina loginę vertę. Priešingu atveju tekstas turėtų būti tiesiog rodomas.

Šią problemą išsprendžiate naudotojo apibrėžta VBA funkcija. Jūs dirbate su funkcijų procedūra, o ne su antrine procedūra.

Jei jau yra makrokomanda, kurią norite pradėti nuo IF funkcijos, galite nukopijuoti kodą į funkcijų procedūrą arba iš jos iškviesti papildomą procedūrą.

Makrokomanda pavadinimu „Startmacro“ naudojama kaip pavyzdys ir iškviečiamas tik paprastas dialogo langas. Atlikite šiuos veiksmus:

  1. Pirmiausia paleiskite VBA redaktorių. Tai galite padaryti visose „Excel“ versijose naudodami klavišų kombinaciją ALT F11.
  2. Norėdami įterpti naują modulio lapą, pasirinkite komandą INSERT - MODULE.

Įveskite šias VBA komandas:

Viešoji funkcija „Startmakro“ () kaip eilutė
Skambinimo skelbimas
Start macro = "Pradėta".
Pabaigos funkcija
Papildomas ekranas ()
„MsgBox“ prasidėjo makrokomanda
Pabaiga Sub

Programos kodas susideda iš dviejų atskirų dalių. Pirmasis fragmentas reiškia naują STARTMAKRO stalo funkciją. Antrasis fragmentas naudojamas rodyti tekstą „Makrokomanda pradėjo“.

Įvedę komandas, VBA redaktoriaus meniu FILE iškvieskite komandą CLOSE AND RETURN TO MICROSOFT EXCEL. Tai sugrąžins jus prie jūsų stalo.

Kaip įtraukti makrokomandą į IF funkciją

Norėdami pamatyti, ar makrokomanda veikia tinkamai, lentelės A2 langelyje įveskite šią funkciją:

= IF (A1 = 1; startmakro (); „Nepradėta“)

Jei į langelį A1 įvesite skaičių 1, makrokomandą iškvies jūsų vartotojo apibrėžta funkcija. Pranešimo langas rodomas, kaip parodyta šiame paveikslėlyje:

Tada yra tekstas „Pradėta“. Ląstelėje. Naudotojo apibrėžta skaičiuoklės funkcija grąžino šį rezultatą „Excel“.

Jei langelio A1 turinys yra ne 1, makrokomanda nepradedama. Tokiu atveju IF funkcija nustato tekstą „Nepradėta“. kaip rezultatas

Pateiktas kelias yra praktika, kurios „Microsoft“ nerekomenduoja. Pranešimų langai neturėtų būti rodomi vartotojo nustatytose funkcijose.

Nebūtina atskirti dviejų makrokomandų: START MACRO ir DISPLAY. Taip pat galite apsieiti be komandos CALL VBA makrokomandoje ir įtraukti paprogramės komandas tiesiai į FUNCTION paprogramę.

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave