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