excel中如何输入汉字,但是在同一单元格中显示某一数字
比如,在A1这一单元格上设置一下拉列表,其中有“优”“良”“中档”三项,我希望在我选“优”的时候,A1中可以显示100,选“良”的时候,A1中可以显示75,选“中档”的时候,A1中可以显示60.
跪求excel大神~~~谢谢~~ 展开
解决excel中如何输入汉字,但是在同一单元格中显示某一数字的步骤如下:
1.先来学习right函数:right函数是从一个文本字符串的最后一个字符开始返回指定个数的字符。
2.在学习另一个函数:left,left与right刚好相反,是从一个文本字符串的第一个字符开始返回指定个数的字符。
3.细心的人会发现这两个函数是返回指定个数的字符,那么有的是类似“自行车123”和“电脑12”这样没有固定个数的怎么办,我们还需要两个函数:一个是len,返回文本字符串中字符的个数;另一个是lenb,返回文本中所包含的的字符数。熟悉了这几个函数后就可以进行下一步了。
4.汉字和数字在A1至A4单元格,我们想将汉字放在B1,将数字放在C1。
5.在B1单元格输入公式:=LEFT(A1,LENB(A1)-LEN(A1));在C1单元格输入公式:=RIGHT(A1,2*LEN(A1)-LENB(A1))。这样就解决了excel中如何输入汉字,但是在同一单元格中显示某一数字的问题了。
在A1添加一个AcitiveX的Combobox控件,然后输入以下VBA代码:
Private Sub Worksheet_Activate()
ComboBox1.Clear
ComboBox1.Visible = True
ComboBox1.AddItem "优"
ComboBox1.AddItem "良"
ComboBox1.AddItem "中"
End Sub
Private Sub ComboBox1_Click()
If ComboBox1.Text = "优" Then
Range("A1") = 100
ComboBox1.Visible = False
End If
If ComboBox1.Text = "良" Then
Range("A1") = 75
ComboBox1.Visible = False
End If
If ComboBox1.Text = "中" Then
Range("A1") = 60
ComboBox1.Visible = False
End If
End Sub
最后效果:
只能通过VBA控件,在工作表上放一个下拉列表控件,然后编写代码响应CLICK事件,根据下拉列表的选中内容,向单元格内赋予相应的数值
如果用宏,可以按如下操作:
首先假定数据在工作表Sheet1。
1.按Alt+F11打开宏代码编写窗口;
2.在窗口左边,在“工程-VBAProject”下面,找到工作表标签 Sheet1 然后用鼠标双击,打开一个工作表事件代码窗口(右边,空白);
3.在右边空白的代码窗口中粘贴如下代码:
Private Sub Worksheet_Change(ByVal Target As Range)
dj = Cells(1, 1)
If dj = "优秀" Then
Cells(1, 1) = 100
ElseIf dj = "良好" Then
Cells(1, 1) = 70
ElseIf dj = "中档" Then
Cells(1, 1) = 60
End If
End Sub
4.在窗口左上角单击EXCEL的标志按钮,返回工作表;
5.在A1单元格选择测试效果。
注意哦:最后记得保存这个设置!
03版本测试通过,供参考!