根据下拉菜单选择

时间:2017-01-03 19:50:12

标签: excel vba validation

我以下拉菜单的形式创建了一个图例并将其放在一个单元格中。 是否可以根据用户选择在下拉菜单中显示与同一单元格中的数字?

下拉菜单:“10 - 优秀”

我希望单元格显示“10”

我知道我可以使用If语句实现这一点,但我写的那篇文章会很长,因为我有很多选项和很多单元格。

谢谢, 安娜

1 个答案:

答案 0 :(得分:0)

我认为没有一种从下拉列表中选择值的内置方式(我假设您使用了数据验证功能并选择了值列表或 指向值列表),并根据所选值转换单元格值。

我会指出一些选择。

选项1 在下拉列旁边有一列,您可以在其中删除 文本部分后 - 例如公式= MID(A1,1,FIND(“ - ”,A1)-1) 假设A列是您的下拉值。 当然,你最终会得到两列

enter image description here

选项2 使用Visual Basic

在数据验证中,如果输入的值无效,请不要启用错误消息。然后使用Visual Basic代码

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False

    If (Target.Column = 1) Then
         Target.Value = Mid(Target.Value, 1, InStr(1, Target.Value, "-") - 1)
    End If
    Application.EnableEvents = True

 End Sub