Přejít na hlavní obsah

Jak získat hodnotu zaškrtávacího políčka VBA Excel

V aplikaci Visual Basic for Applications (VBA) Excel jsou zaškrtávací políčka praktickými ovládacími prvky, které uživatelům umožňují vybrat si jednu nebo více hodnot z nabízených možností. Jsou široce používány k vytváření vlastních tvarů, Maker a dalších aplikací.

Při práci s zaškrtávacími políčky je však nutné získat vybrané hodnoty, které lze použít v dalším kódu. V tomto článku se podíváme na to, jak získat hodnotu zaškrtávacího políčka pomocí VBA Excel.

Nejprve musíte otevřít Visual Basic Editor, abyste mohli napsat požadovaný kód. Poté vytvořte objekt typu CheckBox, což je zaškrtávací políčko. K tomu použijte klíčové slovo Dim, název objektu (například myCheckbox) a klíčové slovo As CheckBox. Nastavte tento objekt na hodnotu pomocí názvu svislého zaškrtávacího diagramu v Excelu. Níže je uveden příklad kódu:


Dim myCheckbox As CheckBox
Set myCheckbox = ThisWorkbook.Worksheets("Sheet1").CheckBoxes("CheckBox1")

Nyní, chcete-li získat hodnotu tohoto zaškrtávacího políčka, použijte vlastnost Value objektu CheckBox. Chcete-li například zkontrolovat, zda je zaškrtnuto políčko, můžete použít konstrukci If-Then:


If myCheckbox.Value = True Then
MsgBox " zaškrtávací políčko vybráno!"
Else
MsgBox " zaškrtávací políčko nebylo vybráno!"
End If

Tímto způsobem můžete získat hodnotu zaškrtávacího políčka v aplikaci VBA Excel a použít jej k provádění různých akcí ve vašem projektu. Tyto návrhy mohou být užitečné při vytváření uživatelských rozhraní a automatizaci úloh v Excelu.

Získání hodnoty zaškrtávacího políčka pomocí VBA kódu

1. Nejprve je třeba definovat objekt zaškrtávacího políčka v kódu VBA. K tomu se používá klíčové slovo "CheckBox" a název objektu. Pokud se například zaškrtávací políčko nazývá "CheckBox1", kód bude vypadat následovně:

Dim myCheckBox As CheckBoxSet myCheckBox = ThisWorkbook.Sheets("Sheet1").CheckBoxes("CheckBox1")

2. Jakmile je objekt zaškrtnut, můžete zkontrolovat jeho hodnotu pomocí vlastnosti "Value". Hodnota vlastnosti " Value "je" True", pokud je zaškrtnuto políčko, a" False", pokud není zaškrtnuto políčko. Níže je uveden příklad kódu, který kontroluje hodnotu zaškrtávacího políčka:

If myCheckBox.Value ThenMsgBox "Флажок установлен!"ElseMsgBox "Флажок не установлен!"End If

3. Pokud chcete provést konkrétní akci na základě hodnoty zaškrtávacího políčka, můžete použít podmíněný návrh "If. Else". Pokud například zaškrtnuté políčko indikuje, že uživatel splnil určitý úkol, lze odeslat zprávu o provedení tohoto úkolu:

If myCheckBox.Value ThenMsgBox "Задача выполнена!"End If

Pomocí VBA kódu je tedy možné snadno získat hodnotu zaškrtávacího políčka v Excelu a komunikovat s ním podle požadované logiky.

Příklad kódu pro získání hodnoty zaškrtávacího políčka VBA Excel

Pokud potřebujete získat hodnotu zaškrtávacího políčka v Excelu VBA, můžete použít následující kód:

Dim checkboxValue As Boolean' Проверяем значение флажка на активностьcheckboxValue = ThisWorkbook.Sheets("Лист1").CheckBox1.ValueIf checkboxValue = True ThenMsgBox "Флажок активен"ElseMsgBox "Флажок неактивен"End If

V tomto příkladu deklarujeme proměnnou checkboxValue typu Boolean, která uloží hodnotu zaškrtávacího políčka. Poté použijeme vlastnost Value k získání hodnoty zaškrtávacího políčka pomocí objektu CheckBox1 na listu List1. Poté pomocí podmíněného příkazu If zkontrolujeme, zda je hodnota aktivní (True) nebo neaktivní (False) a odešleme příslušnou zprávu pomocí funkce MsgBox.

S tímto kódem tedy můžete snadno získat hodnotu zaškrtávacího políčka v aplikaci VBA Excel a provést potřebné kroky v závislosti na jeho stavu.