Hur aktiverar eller inaktiverar jag knapp baserat på cellvärde i Excel?
Den här artikeln kommer jag att prata om några metoder för att aktivera eller inaktivera knapp baserat på cellvärde i Excel-kalkylblad.
Aktivera eller inaktivera två knappar baserat på två kolumndata med VBA-kod
Aktivera eller inaktivera en knapp baserat på två cellvärden med VBA-kod
Aktivera eller inaktivera två knappar baserat på två kolumndata med VBA-kod
Till exempel har jag två kommandoknappar i ett kalkylblad, om kolumn A har data är knappen1 aktiverad och knapp 2 är inaktiverad; om kolumn C innehåller data är knapp 2 aktiverad och knapp 1 inaktiveras. För att lösa denna uppgift kan följande VBA-kod hjälpa dig.
1. Högerklicka på arket som innehåller knapparna och välj sedan Visa kod från snabbmenyn, se skärmdump:
2. I Microsoft Visual Basic för applikationer kopiera och klistra in koden nedan i den tomma modulen:
VBA-kod: Aktivera eller inaktivera två knappar baserat på två kolumner:
Private Sub Worksheet_Change(ByVal Target As Range)
CommandButton1.Enabled = False
CommandButton2.Enabled = False
If Application.WorksheetFunction.CountA(Range("C:C")) > 0 Then
CommandButton2.Enabled = True
End If
If Application.WorksheetFunction.CountA(Range("A:A")) > 0 Then
CommandButton1.Enabled = True
End If
End Sub
Anmärkningar: I ovanstående kod, Kommandoknapp1 och Kommandoknapp2 är knapparnas namn, A: A och C: C är de två kolumner som du använder för att aktivera eller inaktivera två knappar, vänligen ändra dem efter dina behov.
3. Spara sedan och stäng kodfönstret, nu får du följande resultat efter behov:
(1.) Om du skriver data i kolumn A är knapp 1 aktiverad och knapp 2 avaktiverad, se skärmdump:
(2.) Om du skriver data i kolumn C är knapp 2 aktiverad och knapp 1 avaktiverad, se skärmdump:
(3.) Både kolumn A och kolumn C har data, två knappar är alla aktiverade, se skärmdump:
(4.) Två knappar är alla inaktiverade om det inte finns några data i kolumn A och kolumn C, se skärmdump:
Aktivera eller inaktivera en knapp baserat på två cellvärden med VBA-kod
Om du vill aktivera eller inaktivera en kommandoknapp baserat på två cellvärden, till exempel när värdet i A1 är större än värdet i B1, är knappen aktiverad, annars är knappen inaktiverad. Följande VBA-kod kan också göra dig en tjänst.
1. Högerklicka på arket som innehåller knappen och välj sedan Visa kod från snabbmenyn, i Microsoft Visual Basic för applikationer fönster, kopiera och klistra in nedanstående kod i den tomma modulen, se skärmdump:
VBA-kod: Aktivera eller inaktivera en knapp baserat på två cellvärden:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim TargetAdd As String
Dim xTemp As Double
On Error GoTo ExitSub
TargetAdd = Target.Address
CommandButton1.Enabled = False
If (TargetAdd = Range("A1").Address) Or (TargetAdd = Range("B1").Address) Then
If Range("A1") > Range("B1") Then
CommandButton1.Enabled = True
End If
End If
ExitSub:
End Sub
Anmärkningar: I ovanstående kod, A1 och B1 är cellvärdena som du använder, Kommandoknapp1 är knappens namn, ändra dem till dina egna.
2. Spara och stäng sedan kodfönstret, nu, om cellvärdet i A1 är större än B1, är knappen aktiverad, annars, om cellvärdet i A1 är mindre än B1, är knappen inaktiverad, se skärmdump:
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!