Najít a nahradit Excel VBA

Už jste někdy přemýšleli o automatizaci funkce Najít a nahradit v Excelu. Ve VBA můžeme vytvořit makro, které lze použít k nalezení a nahrazení všeho, co normálně děláme v Excelu stisknutím klávesových zkratek Ctrl + H. S pomocí VBA Find and Replace můžeme automatizovat nalezení libovolného slova a nahradit ho jiným nahrazením. To pomáhá, když potřebujeme provést stejnou činnost vícekrát.

Jak najít a nahradit slova v Excelu VBA?

Níže jsou uvedeny různé příklady, jak najít a nahradit slova ve formátu Excel pomocí kódu VBA.

Tuto VBA verzi Najít a nahradit Excel šablony si můžete stáhnout zde - VBA Najít a nahradit Excel šablonu

Najít a nahradit VBA - Příklad č. 1

Ve velmi jednoduchém příkladu máme datovou sadu, která se skládá z nějakého jména. A některá jména se opakují, jak je ukázáno níže.

Nyní vytvoříme kód, pomocí kterého najdeme některá ze jmen, která se opakují a nahrazují něčím jiným. Postupujte podle následujících kroků.

Krok 1: V VBA přejděte do nabídky Vložit a vyberte možnost modulu, jak je ukázáno níže.

Krok 2: Jakmile to uděláme, otevřeme nový modul. V tomto modulu zadejte podkategorii do názvu Najít a nahradit VBA nebo si můžete vybrat libovolný název této podkategorie.

Kód:

 Sub Find_Replace1 () End Sub 

Krok 3: Protože máme data ve sloupci B od buňky B2 do B10, vybereme tento rozsah nejprve z B2: B10.

Kód:

 Sub Find_Replace1 () Range ("B2: B10"). Vyměňte End Sub 

Krok 4: Nyní, abychom nahradili něco, co musíme hledat, to slovo. Zde také nejprve vybereme funkci Nahradit, abychom se podívali na to, co musíme nahradit.

Kód:

 Sub Find_Replace1 () Range ("B2: B10"). Vyměňte End Sub 

Podle syntaxe funkce Nahradit najdeme to, co musíme nahradit.

Krok 5: Vybereme jako jméno, které musíme nahradit, křestní jméno v seznamu „ Ben “.

Kód:

 Rozsah Sub Find_Replace1 () ("B2: B10"). Nahraďte Co: = "Ben" End Sub 

Krok 6: Nyní vyberte náhradní slovo, kterým musíme nahradit vybrané slovo. Zde jsme se rozhodli nahradit jméno Ben Samem, který je uveden jako Výměna, jak je ukázáno níže.

Kód:

 Sub Find_Replace1 () Range ("B2: B10"). Nahraďte Co: = "Ben", Nahrazení: = "Sam" End Sub 

Krok 7: Nyní zkompilujte kód a spusťte jej kliknutím na tlačítko Přehrát nebo stisknutím klávesy F5, jak je ukázáno níže.

Uvidíme, všechny buňky obsahující jméno jako Ben jsou nyní nahrazeny jménem Sam . A to je také zvýrazněno žlutou barvou.

Najít a nahradit VBA - Příklad č. 2

Všichni jsme mohli čelit situaci, kdy jsme se pokusili najít a nahradit některá slova malými a velkými písmeny. Předpokládejme v seznamu, pokud chceme nahradit pouze slovo, které má malá nebo velká písmena. A pokud použijeme proces, který jsme viděli v příkladu 1, nakonec bychom nahradili všechna podobná slova v tomto seznamu spolu s požadovaným. Tento proces nelze provést pomocí funkce Najít a nahradit (Ctrl + H) Excelu. Za tímto účelem máme rezervu ve VBA.

Uvažujme níže uvedené údaje. Jak vidíme, v buňce B2 jsme záměrně přidali slovo BEN velkými písmeny.

Podle níže uvedených kroků vyhledejte a nahraďte slovo BEN.

Krok 1: Spusťte podkategorii Najít a nahradit VBA tam, jak je ukázáno níže.

Kód:

 Sub Find_Replace2 () End Sub 

Krok 2: Vyberte seznam jako rozsah od B2 do B10.

Kód:

 Sub Find_Replace2 () Range ("B2: B10") End Sub 

Krok 3: Nyní vyberte přesné slovo, které chceme nahradit. Zde jsme vybrali BEN, který je v buňce B2.

Kód:

 Sub Find_Replace2 () Range ("B2: B10"). Nahraďte Co: = "BEN" End Sub 

Krok 4: Znovu jsme vybrali stejné slovo, jaké jsme viděli v příkladu 1 jako náhradu BEN jako Sam .

Kód:

 Sub Find_Replace2 () Range ("B2: B10"). Nahraďte Co: = "BEN", Replacement: = "Sam" End Sub 

Krok 5: Nyní pro nahrazení přesného slova BEN, musíme použít MatchCase, pokud se stane PRAVDA, jak je ukázáno níže.

Kód:

 Sub Find_Replace2 () Range ("B2: B10"). Nahradit Co: = "BEN", Nahrazení: = "Sam", MatchCase: = True End Sub 

MatchCase nám pomůže při identifikaci toho slova, které chceme nahradit přesnou shodou. Zde je slovo, které jsme vybrali, velkým písmenem BEN a seznam obsahuje i jiná podobná slova, ale ve správném případě.

Krok 6: Nyní spusťte kód kliknutím na tlačítko Přehrát nebo stisknutím klávesy F5.

Uvidíme, slovo BEN, které bylo v buňce B2, je nyní nahrazeno slovem „ Sam “, zvýrazněným žlutou barvou. A podobná slova Ben, která jsou umístěna v buňkách B5 a B8, se stále nemění.

Takto funguje přesná shoda.

Krok 7: Nyní odebereme přidanou MatchCase z výše uvedeného kódu a uvidíme, jak by to fungovalo.

Kód:

 Sub Find_Replace2 () Range ("B2: B10"). Nahraďte Co: = "BEN", Replacement: = "Sam", MatchCase: = True End Sub 

Krok 8: Znovu sestavte a spusťte kód.

Uvidíme, že kód nahradil všechny buňky obsahující slovo Ben, jak je ukázáno výše. Což znamená, že po odstranění MatchCase bude kód fungovat, jak jsme viděli v příkladu 1.

Výhody Excel VBA Najít a nahradit

  • Hlavní učení je, že slova a buněčný obsah rozlišující malá a velká písmena můžeme nahradit pomocí VBA najít a nahradit, jak je ukázáno v příkladu-2.
  • Pokud je aktivita ručně a vícekrát opakována, pak by automatizace byla výhodou při úspoře času i úsilí.
  • I když máme obrovskou sadu dat, kde chceme nahradit konkrétní slova, lze to udělat, aniž by došlo k pádu Excelu v objemných souborech.

Co si pamatovat

  • Pomocí funkce Záznam makra na kartě Vývojář můžeme vytvořit makro funkce Najít a nahradit. Toto je nejjednodušší způsob, jak vytvořit makro, pokud jste v kódování nováčkem.
  • Uložení souboru v makru Enable excel format umožní, aby se kód v budoucnu používal.
  • Můžeme nahradit jakýkoli druh textu, slova, čísla nebo znaku pomocí VBA Find and Replace.

Doporučené články

Toto je průvodce vyhledáním a nahrazením VBA. Zde diskutujeme o tom, jak najít a nahradit slova v Excelu pomocí VBA spolu s praktickými příklady a stahovatelnou šablonou Excel. Můžete si také prohlédnout naše další doporučené články -

  1. VBA Break for Loop
  2. VYMĚNIT Vzorec v Excelu
  3. Kompletní průvodce Najít VBA
  4. Najít funkci v Excelu

Kategorie: