Pokreni makronaredbu kada je ispunjen uvjet u Excelovoj tablici

Sadržaj

Možete upotrijebiti trik za pokretanje makronaredbe čim funkcija IF u Excel proračunskoj tablici donese određeni rezultat

Makronaredbu treba izvršiti u Excelovoj tablici čim funkcija tablice IF vrati logičku vrijednost. U suprotnom bi se tekst trebao jednostavno prikazati.

Ovaj problem rješavate korisnički definiranom VBA funkcijom. Radite s funkcijskim postupkom umjesto s podprocedurom.

Ako već postoji makronaredba koju želite pokrenuti s funkcijom IF, možete kopirati kôd u postupak Funkcija ili iz njega pozvati proceduru Sub.

Makronaredba s imenom “Startmacro” koristi se kao primjer i poziva samo jednostavan dijaloški okvir. Prati ove korake:

  1. Prvo pokrenite VBA editor. To možete učiniti u svim verzijama programa Excel pomoću kombinacije tipki ALT F11.
  2. Odaberite naredbu INSERT - MODULE za umetanje novog lista modula.

Unesite sljedeće VBA naredbe:

Javna funkcija Startmakro () As String
Oglas za poziv
Pokreni makro = "Pokrenuto."
Završna funkcija
Pomoćni zaslon ()
MsgBox "Makro je pokrenut"
Kraj podm

Programski kod sastoji se od dva odvojena dijela. Prvi fragment predstavlja novu funkciju tablice STARTMAKRO. Drugi se fragment koristi za prikaz teksta "Makro je započeo".

Nakon unosa naredbi, u izborniku FILE u uređivaču VBA pozovite naredbu ZATVORI I VRATI SE NA MICROSOFT EXCEL. Ovo vas vraća na vaš stol.

Kako uključiti makronaredbu u IF funkciju

Da biste provjerili radi li makronaredba, u ćeliju A2 tablice unesite sljedeću funkciju:

= IF (A1 = 1; startmakro (); "Nije započelo.")

Ako unesete broj 1 u ćeliju A1, makronaredbu će pozvati vaša korisnički definirana funkcija. Prozor s porukom prikazuje se kao što je prikazano na sljedećoj slici:

Zatim postoji tekst "Započeto". U ćeliji. Korisnički definirana funkcija proračunske tablice vratila je ovaj rezultat u Excel.

Ako ćelija A1 ima sadržaj različit od 1, makro se ne pokreće. U tom slučaju funkcija IF postavlja tekst "Nije započelo". kao rezultat

Predstavljeni put je praksa koju Microsoft ne preporučuje. Prozori s porukama ne bi se trebali prikazivati unutar korisnički definiranih funkcija.

Nije potrebno razdvajati dva makronaredbe START MACRO i DISPLAY. Također možete učiniti bez naredbe CALL u makronaredbi VBA i uključiti naredbe za potprogram izravno u potprogram FUNCTION.

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave