Excel - Ekezetes karakterek csereje
Blum Szilard
blum at bela2.sulinet.hu
2007. Sze. 5., Sze, 12:49:37 CEST
> A neten találtam egy VBA scriptet, de a _PONTOS_
>használatát már nem mellékelték.
>
> ------------
> Option Explicit
>
> '-- Add more chars to these 2 string as you want
> '-- You may have problem with unicode chars that has
>code > 255
> '-- such as some Vietnamese characters that are outside
>of ASCII code (0-255)
> Const AccChars =
>"©®ąľYAÁÂAÄAÇEÉEËIÍÎI?NOÓÔOÖOUÚUÜUÝaáâaäaçeéeëiíîi?noóôoöouúuüuýy"
> Const RegChars =
>"SZszYAAAAAACEEEEIIIIDNOOOOOOUUUUUYaaaaaaceeeeiiiidnoooooouuuuuyy"
>
> Sub StripAccent(aRange As Range)
> '-- Usage: StripAccent Sheet1.Range("F2:F30")
> Dim A As String * 1
> Dim B As String * 1
> Dim i As Integer
>
>For i = 1 To Len(AccChars)
> A = Mid(AccChars, i, 1)
> B = Mid(RegChars, i, 1)
> aRange.Replace What:=A, _
> Replacement:=B, _
> LookAt:=xlPart, _
> MatchCase:=True
> Next
>
> End Sub
> -----------
>
> Mit kell ezzel csinálni, hogy vagy automatikusan fusson
>le, ha a táblázatot megnyitom, vagy (ami még jobb), egy
>-pl. eszköztáron levő- gombra kattintással tegye a
>dolgát?
-Az még hagyján, de ha lefut, abban sincs sok köszönet :-)
Most próbáltam, és villogtat pár karaktert az érintett
cellákban, a végeredmény meg a szó eredeti hosszának
megfelelő szóköz.
Valahol a konstansokban van a hiba, nem keresgéltem, de ha
a felsőt redukálom "Ááó"-ra, az alsót "Aao"-ra, akkor
Próba Ádámra már jó.
Ja, meg a Sheet1-et cserélni kell Munka1-re, esetleg a
munkalapot átnevezni Sheet1-re.
A futtatás: (Office 2003)
Tegyük fel, hogy az A oszlopba tesszük az ékezetes
neveket, és maximum 100-at egyszerre, A2:A101 helyre.
Jobb gomb az eszköztáron: Vezérlők eszközkészlete
Kiválasztod a parancsgombot, és A1 cellába (vagy máshová)
rajzolsz egy gombot. A gomb nem működik mindaddig, míg a
"háromszögvonalzós" ikon jelölt, addig szerkeszted.
Jobb gomb a parancsgombon: "kód megjelenítése.
A Sub belsejébe beírod:
StripAccent Munka1.Range("A2:A101")
A Sub elé beilleszted a kódot, javítod a már említett
javításokkal.
Megszünteted a "háromszögvonalzós" ikon jelöltségét,
odamásolod az ékezetes neveket, megnyomod a gombot, mire
azok éktelenek lesznek.
Üdv!: Szilárd
További információk a(z) Techinfo levelezőlistáról