Přejít k hlavnímu obsahu

Jak nahradit znaky s diakritikou běžnými znaky v aplikaci Excel?

Obdrželi jste v aplikaci Microsoft Excel nějaké zprávy se znaky s diakritikou? Projít celým sešitem je únavné a ručně nahradit znaky s diakritikou běžnými, například „û„to“ u. A tento článek představí některé záludné věci, jak rychle nahradit znaky s diakritikou běžnými znaky v aplikaci Excel.


Nahraďte znaky s diakritikou běžnými znaky za VBA

Pro uživatele, kteří mají zkušenosti s Microsoft Excel, je použití makra VBA snadným způsobem, jak zvládnout tuto komplikovanou práci.

1. Podržte stisknuté tlačítko Další + F11 klíče v aplikaci Excel a otevře Okno Microsoft Visual Basic pro aplikace.

2. klikněte Vložit > Modula vložte následující makro do souboru Okno modulu.

Function StripAccent(thestring As String)
Dim A As String * 1
Dim B As String * 1
Dim i As Integer
Const AccChars= "ŠŽšžŸÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðñòóôõöùúûüýÿ"
Const RegChars= "SZszYAAAAAACEEEEIIIIDNOOOOOUUUUYaaaaaaceeeeiiiidnooooouuuuyy"
For i = 1 To Len(AccChars)
A = Mid(AccChars, i, 1)
B = Mid(RegChars, i, 1)
thestring = Replace(thestring, A, B)
Next
StripAccent = thestring
End Function

3. Pak přejděte do prázdné buňky a vložte vzorec do buňky: = CheckStringCHAR (InString), Například = CheckStringCHAR ("ù")nebo = CheckStringCHAR (A2).

Poznámky:
(1) Váš Microsoft Visual Basic nemusí vůbec rozpoznávat znaky s diakritikou, pokud nepodporuje Unicode. Když například vložíte znak „š“ do jazyka Visual Basic, může se zobrazit „?“. Pokud ano, toto makro není k dispozici.
(2) Nenahrazuje znaky s diakritikou v řetězcích vybrané buňky přímo.


Nahraďte znaky s diakritikou běžnými znaky programem Kutools pro Excel

Používání makra VBA vyžaduje příliš mnoho dovedností a znalostí. A následující metoda vám pomůže pracovat snadněji pouze s několika kliknutími. Nástroj Kutools pro Excel pro nahrazení znaků s diakritikou vám umožní snadno nahradit všechny druhy znaků s diakritikou běžnými znaky najednou.

Kutools pro Excel - Supercharge Excel s více než 300 základními nástroji. Užijte si plnohodnotnou 30denní zkušební verzi ZDARMA bez nutnosti kreditní karty! Get It Now

1. Vyberte rozsah, ve kterém nahradíte všechny znaky s diakritikou.

2. klikněte Kutools > Text > Nahraďte znaky s diakritikou…, Viz screenshot:

3. In Nahraďte znaky s diakritikou dialogové okno, klepněte na tlačítko Vybrat vše Klepnutím na tlačítko vyberte všechna pravidla nahrazení a klepnutím na tlačítko Ok nahradíte všechny znaky s diakritikou. viz screenshot:

Poznámky:
(1) Pokud nemáte nějaké konkrétní znaky s diakritikou, můžete kliknout na Přidat pravidlo tlačítko pro přidání vlastních pravidel do seznamu ve výše uvedeném dialogu Nahradit znaky s diakritikou.
(2) V dialogovém okně Nahradit znaky s diakritikou můžete upravit nová pravidla nahrazení.

Nyní budete mít všechny znaky s diakritikou v řetězcích vybraného rozsahu okamžitě převedeny na běžné znaky. Viz screenshot:

Projekt Nahraďte znaky s diakritikou Funkce Kutools pro Excel může snadno nahradit všechny druhy znaků s diakritikou za běžné znaky v celém sešitu. Vyzkoušejte zdarma!

Nejlepší nástroje pro produktivitu v kanceláři

Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...

karta kte 201905


Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
Comments (12)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How can I replace multiple characters with a single one? For example é with e?
This comment was minimized by the moderator on the site
Dobrý deň, starší súbor xlsm mi vo win11 debuguje na tom, že nevie nájsť meno hárka "Prehľad", má problém s diakritikou.
Nie je problém zmeniť pomenovanie hárka na nové bez diakritiky resp. vyhľadať objekt inak, oveľa väčší problém je však zároveň ten,
že z tohto súboru v exceli pomocou VBA odosielam emaily a ak chcem pomocou VBA napísať telo emailu, tak sa mi v outlooku
menia písmená s diakritikou (č, ď, ť ...) na rôzne zástupné znaky. Email vyzerá nedôstojne a nechcem ho písať ani bez diakritiky,
pretože sme predsa na Slovensku a komunikujeme ešte v materinskej reči...
Môžete mi prosím napísať, či sa tento problém dá odstrániť konkrétnym nastavením windows alebo officu?
V predošlom počítači to fungovalo bez problémov.
Ďakujem pekne.
This comment was minimized by the moderator on the site
I tried that VBA script on my worksheet which had several names with accent characters. This did a nice job of cleaning them up. Thanks.
This comment was minimized by the moderator on the site
I have added the code and it work perfectly however I need to add more accent to the code as I´m missing polish accents. How can I edit the code and add those accents? I try to do it in a notepad and then paste again the code but it change the letter back to normal characters. I'm not an expert so I really need your help please!
This comment was minimized by the moderator on the site
Const AccChars = "ŠŽšžYAÁÂAÄAÇEÉEËIÍÎI?NOóÔOÖUÚUÜÝaáâaäaçeéeëiíîi?noóôoöuúuüýyĄĘĆŁŃóŚŻŹąęćłńóśżź"
Const RegChars = "SZszYAAAAAACEEEEIIIIDNOOOOOUUUUYaaaaaaceeeeiiiidnooooouuuuyyAECLNOSZZaeclnoszz"
This comment was minimized by the moderator on the site
The VBA function StripAccent() worked like a charm, thank you very much for it. But I would like to ask what exactly does this "* 1" at at the end of "Dim A As String * 1" initialization string, I've never seen that before and I wasn't able to find an answer to that myself so far.
This comment was minimized by the moderator on the site
when you remove special character it also remove the space between the text ??
This comment was minimized by the moderator on the site
is it possible to replace multiple characters with another character? There is no way to say I want to replace é by é

How can I do mass replacements like this in Kutools for Excel? I like the multireplace functionality but it would be a lot more useful if replacement of entire words would be possible. Anyboy any idea how I can do this?
This comment was minimized by the moderator on the site
If you are looking to replace a specific accent character (ex. é), you can do a Find and Replace All (search for "é" and replace with "e"). This solved my problem.
This comment was minimized by the moderator on the site
No shit Sherlock
This comment was minimized by the moderator on the site
Hello, Excellent Macro. Thanks for posting this. However I am wondering if I want to replace all of the characters in the excel file, how can I do that at once? Thanks Vivek
This comment was minimized by the moderator on the site
On the "Replace accented characters with regular characters with VBA" part, step 3, you must replace CheckStringCHAR for STRIPACCENT, which is the name of the function in the provided code!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations