【问题标题】:Userform not displaying Japanese Characters用户窗体不显示日文字符
【发布时间】:2021-11-10 01:04:23
【问题描述】:

用户窗体不显示日文字符

Private Sub UserForm_Initialize()
    Dim lastrow1 As Variant
    Dim i As Variant
    Dim lastrow2 As Variant
    Dim j As Variant
    Dim X As Variant
    Range("Table35[ID]").Select ** Selection of data is in second sheet**
        On Error Resume Next
        Selection.TextToColumns Destination:=Range("B7"), DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
            Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
            :=Array(1, 1), TrailingMinusNumbers:=True
            
    lastrow1 = Worksheets("Global Mapping").Cells(Rows.Count, 1).End(xlUp).Row
    For i = 5 To lastrow1
    On Error Resume Next
    UserForm1.TreeView1.Nodes.Add Key:=Worksheets("Global Mapping").Cells(i, 8).Value & "Class", Text:=Worksheets("Global Mapping").Cells(i, 8).Value
    On Error Resume Next
    UserForm1.TreeView1.Nodes.Add relative:=Worksheets("Global Mapping").Cells(i, 8).Value & "Class", relationship:=tvwChild, Key:=Worksheets("Global Mapping").Cells(i, 8).Value & Worksheets("Global Mapping").Cells(i, 6).Value & "Sub-class", Text:=Worksheets("Global Mapping").Cells(i, 6).Value
    On Error Resume Next
    UserForm1.TreeView1.Nodes.Add relative:=Worksheets("Global Mapping").Cells(i, 8).Value & Worksheets("Global Mapping").Cells(i, 6).Value & "Sub-class", relationship:=tvwChild, Key:=Worksheets("Global Mapping").Cells(i, 6).Value & Worksheets("Global Mapping").Cells(i, 4).Value & "FS-Line", Text:=Worksheets("Global Mapping").Cells(i, 4).Value
    UserForm1.TreeView1.Nodes.Add relative:=Worksheets("Global Mapping").Cells(i, 6).Value & Worksheets("Global Mapping").Cells(i, 4).Value & "FS-Line", relationship:=tvwChild, Key:=Worksheets("Global Mapping").Cells(i, 1).Value & "Note Line", Text:=Worksheets("Global Mapping").Cells(i, 1).Value
    UserForm1.TreeView1.Nodes.Add relative:=Worksheets("Global Mapping").Cells(i, 1).Value & "Note Line", relationship:=tvwChild, Key:=Worksheets("Global Mapping").Cells(i, 1).Value & "Note Line", Text:=Worksheets("Global Mapping").Cells(i, 1).Value
    Next i
    lastrow2 = Worksheets("Template").Cells(Rows.Count, 2).End(xlUp).Row
    For j = 6 To lastrow2
    If Worksheets("Template").Cells(j, 4).Value <> "" Then
    UserForm1.TreeView1.Nodes.Add relative:=Worksheets("Template").Cells(j, 5).Value & "Note Line", relationship:=tvwChild, Key:=Worksheets("Template").Cells(j, 5).Value & _
    Worksheets("Template").Cells(j, 2).Value & _
        "[" & Worksheets("Template").Cells(j, 3).Value & "]" & "Detailed", Text:=Worksheets("Template").Cells(j, 2).Value & _
        "[" & Worksheets("Template").Cells(j, 3).Value & "]"
    ''''''''''''''''''''''''''
    Else
        UserForm1.ListBox1.AddItem Worksheets("Template").Cells(j, 2).Value & _
        "[" & Worksheets("Template").Cells(j, 3).Value & "]"
    End If
    Next j
    UserForm1.TreeView1.HideSelection = False
    UserForm1.ComboBox1.List = Array("Class", "Sub-class", "FS-Line", "Note line", "Detailed")
    UserForm1.ComboBox1.Value = "Class"
    UserForm1.TextBox1.Text = "Type to search ..."
    For X = 1 To UserForm1.TreeView1.Nodes.Count
        If InStr(UserForm1.TreeView1.Nodes(X).Key, "Note Line") Then
         UserForm1.TreeView1.Nodes(X).BackColor = &HC0C0C0
        End If
    Next X
    End Sub
    'Unmap button
    Private Sub BTN_MoveSelectedLeft_Click()
        Dim iCtr As Long
            On Error GoTo errorhandler
      If UserForm1.BTN_MoveSelectedLeft.Value = True Then
            If UserForm1.TreeView1.SelectedItem.Text <> "" Then
            If InStr(UserForm1.TreeView1.SelectedItem.Key, "Detailed") > 0 Then
               UserForm1.ListBox1.AddItem UserForm1.TreeView1.SelectedItem.Text
               UserForm1.TreeView1.Nodes.Remove (TreeView1.SelectedItem.Index)
            '   UserForm1.TreeView1.Nodes(TreeView.SelectedItem.Index).Parent.Selected = True
                
    'Run "SortListBox", ListBox1, 0, 1, 1
            End If
            End If
            BTN_MoveSelectedLeft = False
        End If
        'BTN_MoveSelectedLeft.Value = False
        Exit Sub
    errorhandler:    *** error handling part**
    BTN_MoveSelectedLeft.Value = False
    Exit Sub
        
    End Sub

代码正在运行,但问题在下面提到

输出显示在右侧,当我将其移动到左侧时,它显示日语,但在右侧,它没有显示。请帮忙

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    您必须安装 Arial Unicode 字体 - 它包括日文字符和许多其他字符。 Unicode 字体是 MS Office 的一部分。默认情况下不安装,但您可以通过控制面板轻松安装。

    这里Displaying Japanese text in the Immediate Window of Excel VBA

    【讨论】:

    • 即使在那之后它也不起作用,这里的问题是我们创建了一个树,在右侧它显示了一些不同的文本,当我们将它移动到左侧时它显示的是日文文本
    • 谁能帮忙???
    • 谁能帮忙??pleaseeeeeeeeeeeee
    • 谁能帮帮我???????????
    猜你喜欢
    • 2017-06-15
    • 1970-01-01
    • 1970-01-01
    • 2015-09-17
    • 2018-06-16
    • 2019-03-13
    • 2016-02-27
    • 2019-07-23
    • 2021-04-25
    相关资源
    最近更新 更多