Hvordan køres makro baseret på celleværdi i Excel?
Antag, jeg har flere makrokoder i min projektmappe, og nu vil jeg køre disse koder baseret på celleværdien. Denne artikel vil jeg tale om flere situationer, du måtte lide i dit daglige arbejde, når du bruger Excel.
Kør eller udløs makro, hvis celleværdien er større eller mindre end en bestemt værdi med VBA-kode
Kør eller udløs makro, hvis celleværdi er lig med specifik tekst med VBA-kode
Kør eller udløs makro, hvis celleværdien er større eller mindre end en bestemt værdi med VBA-kode
For eksempel, hvis værdien i celle A1 er mellem 10 og 50, skal du køre makro1, og hvis værdien er større end 50, skal du køre makro2. For at løse dette job i Excel skal du anvende følgende VBA-kode.
1. Højreklik på arkfanen, som du vil udføre makroen baseret på en celleværdi, og vælg derefter Vis kode fra genvejsmenuen og i det åbnede Microsoft Visual Basic til applikationer vindue, kopier og indsæt følgende kode i det tomme modul:
VBA-kode: Kør makro, hvis celleværdien er større eller mindre end:
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
Bemærk: I ovenstående kode:
A1 er den celle, der indeholder den specifikke værdi, du vil køre makroen baseret på;
Sag 10 til 50: Makro1: det betyder, at hvis værdien er mellem 10 og 50, skal du køre Macro1;
Sag er> 50: Makro2: det betyder, at hvis værdien er større end 50, skal du køre Macro2.
Skift disse makronavne og kriterier efter dit behov, og du kan også tilføje flere kriterier efter Kasse scripts.
2. Gem og luk derefter dette kodevindue, nu når den værdi, du indtaster, er mellem 10 og 50 i celle A1, udløses Makro1, hvis den indtastede værdi er større end 50, udføres Makro2.
Kør eller udløs makro, hvis celleværdi er lig med specifik tekst med VBA-kode
Hvis du f.eks. Vil udløse makroen baseret på specifik tekst i en celle, for at køre makroen1, hvis teksten "Slet" er indtastet, og kør makro2, hvis teksten "Indsæt" er skrevet. Følgende kode kan gøre dig en tjeneste.
1. Højreklik på det ark, som du vil udføre makroen baseret på celleværdien, og vælg derefter Vis kode fra genvejsmenuen og i det åbnede Microsoft Visual Basic til applikationer vindue, kopier og indsæt følgende kode i det tomme modul:
VBA-kode: Kør makro, hvis celleværdien er en specifik tekst
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
Bemærk: I ovenstående kode, “Slette"Og"indsatte”Er de celletekster, som du vil køre makroer baseret på, og Macro1 , Macro2 er de makroer, du vil udføre baseret på tekst. Skift dem til dit behov.
2. Gem derefter denne kode og luk vinduet, når du nu indtaster teksten "Slet" i celle A1, udløses makro1. Hvis teksten "Indsæt" indtastes, udføres makro2.
Relaterede artikler:
Hvordan køres makro, når celleværdien ændres i Excel?
Hvordan køres makro automatisk inden udskrivning i Excel?
Hvordan køres makro baseret på værdi valgt fra rullelisten i Excel?
Hvordan køres makro ved at klikke på hyperlinks i Excel?
Hvordan køres makro, når ark er valgt fra en projektmappe?
Bedste kontorproduktivitetsværktøjer
Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid. Klik her for at få den funktion, du har mest brug for...
Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere
- Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
- Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
- Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!