Kako zagnati makro na podlagi vrednosti celice v Excelu?
Recimo, da imam v delovni knjigi več kod makrov, zdaj pa jih želim zagnati na podlagi vrednosti celice. V tem članku bom govoril o več situacijah, ki so vam lahko izpostavljene pri vsakodnevnem delu pri uporabi Excela.
Zaženi ali sproži makro, če je vrednost celice večja ali manjša od določene vrednosti s kodo VBA
Zaženi ali sproži makro, če je vrednost celice enako besedilu s kodo VBA
Zaženi ali sproži makro, če je vrednost celice večja ali manjša od določene vrednosti s kodo VBA
Če je na primer vrednost v celici A1 med 10 in 50, zaženite makro1 in če je vrednost večja od 50, zaženite makro2. Če želite to nalogo rešiti v Excelu, uporabite naslednjo kodo VBA.
1. Z desno miškino tipko kliknite zavihek lista, za katerega želite zagnati makro na podlagi vrednosti celice, in nato izberite Ogled kode v priročnem meniju in v odprtem Microsoft Visual Basic za aplikacije okno, kopirajte in prilepite naslednjo kodo v prazen modul:
Koda VBA: Zaženite makro, če je vrednost celice večja ali manjša od:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Cells.Count > 1 Then Exit Sub
If IsNumeric(Target) And Target.Address = "$A$1" Then
Select Case Target.Value
Case 10 To 50: Macro1
Case Is > 50: Macro2
End Select
End If
End Sub
Opombe: V zgornji kodi:
A1 je celica, ki vsebuje določeno vrednost, na podlagi katere želite zagnati makro;
Primer 10 do 50: Makro1: pomeni, če je vrednost med 10 in 50, zaženite Macro1;
Primer je> 50: Macro2: pomeni, da je vrednost večja od 50, zaženite Macro2.
Imena makrov in merila teze spremenite po svojih željah, po kriteriju pa lahko dodate tudi več meril Zadeva skripta.
2. Nato shranite in zaprite to okensko okno. Zdaj, ko je vrednost, ki jo vnesete med 10 in 50 v celici A1, se sproži Macro1, če je vnesena vrednost večja od 50, se izvede Macro2.
Zaženi ali sproži makro, če je vrednost celice enako besedilu s kodo VBA
Če želite na primer sprožiti makro na podlagi določenega besedila v celici, da zaženete makro1, če je vneseno besedilo »Delete«, in makro2, če je vneseno besedilo »Insert«. Naslednja koda vam lahko stori uslugo.
1. Z desno miškino tipko kliknite list, ki ga želite izvesti na podlagi vrednosti celice, in nato izberite Ogled kode v priročnem meniju in v odprtem Microsoft Visual Basic za aplikacije okno, kopirajte in prilepite naslednjo kodo v prazen modul:
Koda VBA: Zaženi makro, če je vrednost celice določeno besedilo
Sub worksheet_change(ByVal target As Range)
Set target = Range("A1")
If target.Value = "Delete" Then
Call Macro1
End If
If target.Value = "Insert" Then
Call Macro2
End If
End Sub
Opombe: V zgornji kodi jeBrisanje"In"Vstavi"So besedila celic, na katerih želite zagnati makre, in Makro1 in Makro2 so makri, ki jih želite zagnati na podlagi besedila. Prosimo, spremenite jih glede na vaše potrebe.
2. Nato shranite to kodo in zaprite okno. Ko v celico A1 vnesete besedilo “Delete”, se sproži makro1, če vnesete besedilo “Vstavi”, se izvede makro2.
Sorodni članki:
Kako zagnati makro, ko se vrednost celice spremeni v Excelu?
Kako samodejno zagnati makro pred tiskanjem v Excelu?
Kako zagnati makro na podlagi vrednosti, izbrane s spustnega seznama v Excelu?
Kako zagnati makro s klikom na hiperpovezave v Excelu?
Kako zagnati makro, ko je list izbran iz delovnega zvezka?
Najboljša pisarniška orodja za produktivnost
Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa. Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...
Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo
- Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
- Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
- Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!