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.