Přejít na hlavní obsah

Metody práce s textovými poli (Textbox) v aplikaci VBA Excel

Textová pole (Textbox) v aplikaci VBA Excel se používají k zadávání a zobrazení textu uživatelem. Mohou být velmi užitečné při vytváření uživatelského rozhraní, kde uživatel bude muset zadat informace, jako je jeho jméno nebo e-mailová adresa. V tomto článku se podíváme na několik metod práce s textovými poli v aplikaci VBA Excel.

Vytvoření textového pole: Chcete-li vytvořit textové pole v aplikaci VBA Excel, musíte použít objekt UserForm a jeho vlastnost TextBox. Příklad kódu:


Dim MyTextBox as Object
Set MyTextBox = UserForm1.Controls.Add("Forms.TextBox.1")
MyTextBox.Name = "TextBox1"
MyTextBox.Top = 10
MyTextBox.Left = 10
MyTextBox.Width = 100
MyTextBox.Height = 20
MyTextBox.Value = "zadejte text"

Získání hodnoty z textového pole: Chcete-li získat hodnotu zadanou uživatelem do textového pole, musíte se podívat na vlastnost Value tohoto pole. Příklad kódu:


Dim MyValue as String
MyValue = UserForm1.TextBox1.Value

Změna hodnoty textového pole: Pokud potřebujete změnit hodnotu v textovém poli, můžete mu jednoduše přiřadit novou hodnotu. Příklad kódu:


UserForm1.TextBox1.Value = "nová hodnota"

Toto jsou pouze některé metody práce s textovými poli v aplikaci VBA Excel. Použijte je k vytvoření interaktivnějších a funkčních uživatelských rozhraní vašich aplikací Excel.

Funkce pro práci s textovými poli VBA Excel

Jednou z funkcí práce s textovými poli je jejich propojení s buňkami tabulky aplikace Excel. Každé textové pole je spojeno s konkrétní buňkou a jakékoli změny provedené uživatelem v textovém poli se automaticky odrážejí v propojené buňce. To umožňuje použití textových polí pro zadávání a úpravy dat, která pak lze snadno zpracovat v makrech.

Pro práci s textovými poli používá VBA Excel objektové modelování. Každé textové pole je instance objektu třídy TextBox. Pro přístup k vlastnostem a metodám textového pole je nutné se obrátit na příslušný objekt TextBox. K získání textu zadaného do textového pole lze například použít vlastnost Text objektu TextBox.

Kromě toho lze textová pole v aplikaci VBA Excel nakonfigurovat pomocí různých vlastností. Můžete například nastavit limit délky textu, nastavit specifickou vstupní masku, nastavit typ dat a další. Tyto vlastnosti umožňují ovládat uživatelská data a umožňují přesnější zpracování textu v makrech a aplikacích.

VlastnostPopis
TextVrátí nebo zadá text zadaný uživatelem do textového pole.
MaxLengthVrátí nebo nastaví maximální délku textu, kterou lze zadat do textového pole.
MaskVrátí nebo nastaví vstupní masku omezením datového typu a formátu textu.
ValueVrátí nebo nastaví hodnotu textového pole v buňce tabulky aplikace Excel.

Práce s textovými poli v aplikaci VBA Excel vám umožní zlepšit uživatelské rozhraní a učinit makra a aplikace pohodlnějšími a funkčnějšími. Správné použití textových polí s přihlédnutím k jejich vlastnostem umožňuje ovládat zadaná data, zpracovávat je a používat je v další práci s tabulkami a zprávami aplikace Excel.

Část 1: Metody práce s textovými poli

1. Metody pro získání a nastavení hodnoty textového pole:

  • .Hodnota je vlastnost, která umožňuje získat nebo nastavit hodnotu textového pole. Chcete-li například získat hodnotu textového pole, můžete použít následující kód: Dim textValue As String textValue = TextBox1.Value
  • .Text je alternativní vlastnost pro získání a nastavení hodnoty textového pole. Obvykle se používá místo vlastností .Value v textových polích. Chcete-li například nastavit hodnotu textového pole, můžete použít následující kód: TextBox1.Text = " Ahoj, světe!"

2. Metoda čištění textového pole:

  • .Clear je metoda, která umožňuje vymazat obsah textového pole. Chcete-li například vymazat textové pole, můžete použít následující kód: TextBox1.Clear

3. Metody pro práci s vybraným textem:

  • .SelText je vlastnost, která umožňuje získat nebo nastavit vybraný text v textovém poli. Chcete-li například získat zvýrazněný text, můžete použít následující kód: Dim selectedText As String selectedText = TextBox1.SelText
  • .SelStart je vlastnost, která umožňuje získat nebo nastavit výchozí pozici vybraného textu v textovém poli. Chcete-li například nastavit výchozí pozici zvýrazněného textu, můžete použít následující kód: TextBox1.SelStart = 5
  • .SelLength je vlastnost, která umožňuje získat nebo nastavit délku zvýrazněného textu v textovém poli. Chcete-li například nastavit délku zvýrazněného textu, můžete použít následující kód: TextBox1.SelLength = 10

4. Metody pro práci s výběrem textu v textovém poli:

  • .SetFocus je metoda, která umožňuje nastavit zaměření na textové pole. Chcete-li například nastavit zaostření na textové pole, můžete použít následující kód: TextBox1.SetFocus
  • .Cut je metoda, která umožňuje vystřihnout vybraný text z textového pole. Chcete-li například vystřihnout zvýrazněný text, můžete použít následující kód: TextBox1.Cut
  • .Copy je metoda, která Vám umožňuje zkopírovat vybraný text z textového pole. Chcete-li například zkopírovat vybraný text, můžete použít následující kód: TextBox1.Copy
  • .Paste je metoda, která umožňuje vložit zkopírovaný nebo vystřižený text do textového pole. Chcete-li například vložit text ze schránky, můžete použít následující kód: TextBox1.Paste

V této části jsme se zabývali základními metodami práce s textovými poli v aplikaci VBA Excel. Pomocí těchto metod můžete vytvářet funkčnější aplikace, které uživateli usnadňují práci s textovými daty.

Vytvoření textového pole

Chcete-li vytvořit textové pole, musíte postupovat podle následujících kroků:

  1. Otevřete režim úpravy formuláře v aplikaci VBA Excel.
  2. Vyberte oblast, ve které bude textové pole umístěno.
  3. Vložit objekt třídy TextBox do vyhrazené oblasti.
  4. Upravit nastavení textového pole, jako je velikost, poloha, vlastnosti písma atd.

Příklad vytváření textového pole VBA Excel:

Dim TextBox1 As Object

Set TextBox1 = ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 100, 100, 200, 25)

TextBox1.Text = "Zadejte text"

V tomto příkladu:

  • Je vytvořen objekt TextBox1 třídy TextBox .
  • Pomocí metody AddTextbox objektu třídy Shapes se vytvoří textové pole s danými souřadnicemi a rozměry (100, 100, 200, 25).
  • Vlastnost Text objektu TextBox1 je přiřazena k hodnotě "zadejte text".

Po dokončení tohoto kódu se na aktivním listu aplikace Excel zobrazí textové pole se zadaným textem a zadanými možnostmi.

Změna vlastností textového pole

V jazyce VBA jsou pro práci s textovými poli (Textbox) k dispozici různé vlastnosti, které umožňují měnit a spravovat jejich vzhled a funkčnost.

Jednou z hlavních vlastností textového pole je jeho textový obsah. Pro změnu této Vlastnosti, VBA používá vlastnost Text. Chcete-li například nastavit textové pole "TextBox1" na rovný řádek " Ahoj světe!", lze použít následující kód:

TextBox1.Text = "Привет, мир!"

Kromě toho lze změnit i další Vlastnosti textového pole. Například vlastnost Width umožňuje nastavit šířku textového pole na určité jednotky měření (například pixely nebo procenta). Příklad použití:

TextBox1.Width = 200 ' устанавливаем ширину текстового поля равной 200 пикселей

Stejně tak vlastnost Height umožňuje nastavit výšku textového pole:

TextBox1.Height = 100 ' устанавливаем высоту текстового поля равной 100 пикселей

Existuje také vlastnost Enabled, který umožňuje povolit nebo zakázat uživatelskou interakci s textovým polem. Chcete-li například zakázat možnost úpravy textu v poli "TextBox1", můžete použít následující kód:

TextBox1.Enabled = False ' отключаем редактирование текста

A nakonec vlastnost Visible umožňuje skrýt nebo zobrazit textové pole ve tvaru. Příklad použití:

TextBox1.Visible = False ' скрываем текстовое поле

To jsou však jen některé z vlastností dostupných pro změnu textového pole VBA. Pomocí těchto vlastností a dalších funkcí jazyka VBA lze snadno přizpůsobit textová pole v Excelu vašim potřebám.

Správa obsahu textového pole

Textová pole (Textbox) v aplikaci VBA Excel umožňují uživateli zadávat a zobrazovat textové informace. Jsou široce používány k vytváření uživatelských rozhraní a práci s daty.

Pro správu obsahu textového pole v aplikaci VBA Excel lze použít různé metody:

  1. Zadání hodnoty pole: Pomocí vlastností .Text lze nastavit na hodnotu textového pole. Například:
  1. Získání hodnoty pole: Chcete-li získat hodnotu textového pole, musíte použít vlastnost .Text . Například:

Poznámka: Hodnotu textového pole lze použít v další práci s daty, jako jsou výpočty nebo vkládání dat do buněk tabulky.

  1. Čištění pole: Metoda .Clear umožňuje vymazat obsah textového pole. Například:
  1. Zastavení úprav: Metoda .Enabled umožňuje zakázat úpravy textového pole. Například:

Poznámka: Po zákazu úprav bude textové pole zobrazovat hodnotu, ale uživatel ji nebude moci změnit.

  1. Skrytí pole: Metoda .Visible umožňuje skrýt textové pole. Například:

Poznámka: Po skrytí textového pole se nezobrazí na uživatelském rozhraní, ale jeho hodnotu lze stále získat nebo programově změnit.

Pomocí těchto metod lze snadno spravovat obsah textových polí v aplikaci VBA Excel, čímž je uživatelské rozhraní pohodlnější a funkčnější.