Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何在变量中存储汉字?_Excel_Vba - Fatal编程技术网

Excel 如何在变量中存储汉字?

Excel 如何在变量中存储汉字?,excel,vba,Excel,Vba,我需要在变量中得到一个单元格值 此单元格值中包含汉字 当我试图得到单元格值时,我得到的是“??” 这不是一个有效的答案,只是为了向OP展示我如何处理非英语字符 1)使用这样的样本数据 2)使用 一,。ListBox defaultname=ListBox1 二,。TextBox defaultname=TextBox1 三,。CommandButton默认名称=CommandButton1 粘贴此代码 Option Explicit Dim rCell As Range Private

我需要在变量中得到一个单元格值

此单元格值中包含汉字

当我试图得到单元格值时,我得到的是“??”


这不是一个有效的答案,只是为了向OP展示我如何处理非英语字符

1)使用这样的样本数据

2)使用

一,。ListBox defaultname=ListBox1

二,。TextBox defaultname=TextBox1

三,。CommandButton默认名称=CommandButton1

粘贴此代码

Option Explicit
Dim rCell As Range

Private Sub CommandButton1_Click()
rCell.Cells(ListBox1.ListIndex + 1).Value = TextBox1.Value
Refresh_Values
End Sub

Private Sub ListBox1_Click()
  With ListBox1
    TextBox1.Value = .List(.ListIndex)
  End With
End Sub

Private Sub UserForm_Initialize()
Refresh_Values
End Sub

Sub Refresh_Values()
Dim a() As Variant
  Set rCell = Sheet1.Range("A1:A7")
  a() = rCell.Value
  ListBox1.List() = a()
End Sub
*1如果列表框中有更改。它将反映在文本框中

*2如果单击“保存”,它将反映到工作表中

*3它刷新值,以便使用值所做的更改将反映在列表框中


希望这对你有帮助。祝你好运

你打算怎么处理这些角色?我也有同样的情况,我还没有遇到任何问题。事实上,我正在设计宏来将中文字母翻译成英文。我承认我无能为力。我只需要从工作表中获取字符,将它们传递给控件(textbox/combobox),如果有更改(或没有更改),将它们写回工作表。OT:那么您正在创建一个类似字典的函数?Unicode限制为255个字符,所以上面的所有内容,如中文字母,都表示为
。您可以将它们存储在VAR中,并将其打印到其他单元格中,无需任何问题。使用汉字时,您可能需要使用
AscW()
ChrW()
。@Romcel,如何获取字符并传递到控件?你能给我提供密码吗。这将有助于理解。谢谢。谢谢您的大力支持。您可以在下面查看以供参考。