Konwertuj wiele wartości Unicode na odpowiedni tekst w arkuszu kalkulacyjnym Excel


2

Jeśli mój znak Unicode zawiera więcej niż jedną wartość szesnastkową w komórce Excela, jak napisać funkcję w Excelu, aby przekonwertować ją na odpowiedni znak?

Na przykład: Hex wartości Unicode w komórce Excel: 0B15 0B4D 0B37. Znak utworzony z powyższych wartości: କ୍ଷ(język Odia / indyjski)


Witamy w Super User! Potrzebne są dalsze szczegóły. Poinformuj nas o swoich badaniach i próbach rozwiązania tego problemu. Poświęć chwilę, aby przeczytać Jak zadać pytanie, aby poprawić swoje pytanie.
— CharlieRB


Wierzę, że ta kwestia nie jest duplikatem, ponieważ starsza pytanie dotyczy wyłącznie konwersji pojedynczego UTF-16 / UCS-2 punkt kodeksu w charakterze, podczas gdy kwestia ta zajmuje się w compositingu sekwencji łączenia punktów kodowych do pojedynczy glif .
— Scott

Odpowiedzi:


1

Z danymi takimi jak:

wprowadź opis zdjęcia tutaj

Zainstalować następujące U ser D efined F pomazanie (UDF) :

Public Function qwerty(r As Range) As Variant
   Dim L As Long, CH As String, CH2 As String
   arr = Split(ActiveCell.Text, " ")
   For Each a In arr
      L = Application.WorksheetFunction.Hex2Dec(a)
      CH = ChrW(L)
      CH2 = CH2 & CH
   Next a
   qwerty = CH2
End Function

Następnie wybierz komórkę, powiedz komórkę B1 , sformatuj ją w Arial Unicode MS i wprowadź:

=qwerty(A1)

wprowadź opis zdjęcia tutaj

Funkcje zdefiniowane przez użytkownika (UDF) są bardzo łatwe w instalacji i obsłudze:

  1. ALT-F11 wyświetla okno VBE
  2. ALT-I ALT-M otwiera nowy moduł
  3. wklej i zamknij okno VBE

Jeśli zapiszesz skoroszyt, UDF zostanie z nim zapisany. Jeśli używasz wersji Excela późniejszej niż 2003, musisz zapisać plik jako .xlsm zamiast .xlsx

Aby usunąć UDF:

  1. wywołać okno VBE jak wyżej
  2. wyczyść kod
  3. zamknij okno VBE

Aby użyć UDF z Excela:

= qwerty (A1)

Aby dowiedzieć się więcej o makrach, zobacz:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

i

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

a szczegółowe informacje na temat UDF można znaleźć:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

Makra muszą być włączone, aby to działało!


Próbowałem kodu, ale nie daje wyniku, jak pokazano.
— Ajit Kumar Nayak

@AjitKumarNayak Czy użyłeś sugerowanej czcionki ? Przy niewłaściwej czcionce zobaczysz znaki zapytania.
— Student Gary'ego
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.