Cześć, mam taki przypadek ze mam listę imion w różnych alfabetach i musze usunąć te które mają nie pelne imiona jak np. Imię ktora ma tylko jedna literę. Jak zrobie len o długości 1 to sa różne alfabety i ja musze usunąć tylko te które mają litery w naszym łacińskim alfabecie. Czy jest jakaś funkcja ktora wykrywa taki alfabet w VBA ?
Nie wiem czy jest gotowa funkcja, ale możesz sprawdzić np po kodach ASCII.
Nie wiem, czy ja rozumiem - albo ty - istotę stawianego zagadnienia.
Np A
należy do alfabetu (o ile takowa koncepcja w danych środowisku programowym w ogóle jest) łaciśniego, angielskiego, niemieckiego
"dawne" osmiobitowe strony kodowe implementowały grupy narodowościowe (wsch europa / nordyckie / cyrylica).
Bardzo orientacyjnie mogę sobie wyobrazić:
konwertujemy nowocześnsą literkę w unicode do 'starej' strony kodowej, i mamy wynik pozytywny lub negatyny - wiemy, czy przynależy do nordyckich / wsch europejskich / itd
Paweł Gerc napisał(a):
Jak zrobie len o długości 1 to sa różne alfabety i ja musze usunąć tylko te które mają litery w naszym łacińskim alfabecie.
Za nic nie rozumiem.
Mamy kolumnę z imionami, musze usunąć te które mają 1 znak i ten 1 znak to może być M ale może być 韩. Muszę napisać kod który wykryje jakie ma usunąć wiersze a ma usunąć tylko te których znaki to litery abecadła. Moge tez napisać na jana caly alfabet w kodzie od a do z.
Z tego co pamiętam, bo VBA średnio nadaje się do UNIKODU. I jego wszystkie funkcje oparte "o VBA" również.
Np.
ЗАПОРОЖЕ
funkcja
=LEWY("ЗАПОРОЖЕ";1)
Zwraca poprawnie. Ale
=KOD(LEWY("ЗАПОРОЖЕ";1))
Już nie, bo zwraca 63 czyli ""?""
Paweł Gerc napisał(a):
Mamy kolumnę z imionami, musze usunąć te które mają 1 znak i ten 1 znak to może być M ale może być 韩. Muszę napisać kod który wykryje jakie ma usunąć wiersze a ma usunąć tylko te których znaki to litery abecadła. Moge tez napisać na jana caly alfabet w kodzie od a do z.
jeżeli dłudość(napis)==1 and napis[0] nalezy "abcdefghijklmnopqrstuvwxyz"
przerób sobie na VBA
Marcin.Miga napisał(a):
Z tego co pamiętam, bo VBA średnio nadaje się do UNIKODU. I jego wszystkie funkcje oparte "o VBA" również.
w drugim czytaniu wydaje się niekonieczne
Dzięki, ze tez sam na to nie wpadłem. Juz chciałem to zrobić w jeszcze inny sposób, bo mam kolumnę z nazwami krajów wiec moge zrobić tak żeby usuwała wszystkie te co mają 1 znak i nie są w krajach typu chiny, japonia, korea
Paweł Gerc napisał(a):
Dzięki, ze tez sam na to nie wpadłem. Juz chciałem to zrobić w jeszcze inny sposób, bo mam kolumnę z nazwami krajów wiec moge zrobić tak żeby usuwała wszystkie te co mają 1 znak i nie są w krajach typu chiny, japonia, korea
Jesli to ma formę relacyjnej bazy danych - i jest zdrowo zaprojektowane - to zupełnie wywraca zagadnienie. Ale "przyleciałeś"" do nas ze szczegółem, a nie ogólną architekturą.
ZrobieDobrze napisał(a):
Paweł Gerc napisał(a):
Dzięki, ze tez sam na to nie wpadłem. Juz chciałem to zrobić w jeszcze inny sposób, bo mam kolumnę z nazwami krajów wiec moge zrobić tak żeby usuwała wszystkie te co mają 1 znak i nie są w krajach typu chiny, japonia, korea
Jesli to ma formę relacyjnej bazy danych - i jest zdrowo zaprojektowane - to zupełnie wywraca zagadnienie. Ale "przyleciałeś"" do nas ze szczegółem, a nie ogólną architekturą.
I tak wykorzystam Twoją metodę, bo może zdarzyć się kontakt powiedzmy z Chin który będzie miał imię lub nazwisko w nie ich alfabecie, dlatego nie chciałem brać po krajach bo może to być niezbyt dokładne.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.