数据有效性列表项在 Excel 的一行内

症状

当运行 Microsoft Excel 宏或其他编程代码时,将单元格的数据验证规则设置为有效条目的列表时,单元格中的数据验证列表中的所有项目都将显示在一行中。

原因

如果满足以下条件,则会发生此问题:

  • 列表分隔符设置(在 "控制面板" 中的 "区域选项" 下)不是逗号(,)。 例如,如果你的区域设置为 "德国",则列表分隔符为分号。

  • 用于数据验证的宏使用该列表分隔符指定有效的单元格条目。

  • 宏代码显式指定列表,而不是指向列出有效条目的单元格区域。

解决方法

创建宏以指定有效条目的特定列表时,请始终使用逗号(,)作为列表分隔符。

更多信息

在 Excel 中,Microsoft Visual Basic for Applications 始终使用逗号作为列表分隔符。 这允许你在具有不同区域设置的计算机上运行宏,而无需编辑你的代码。 当使用 VBA (XLValidateList Formula1)传递逗号分隔的数组以进行数据有效性时,将应用255字符限制。当运行使用列表分隔符更改设置的宏时,宏会将逗号转换为本地区域列表分隔符。 例如,如果宏创建数据验证列表,或使用区域在单元格中输入公式,则会出现这种情况。公式("数字 1,数字 2") 命令。

参考

有关 Excel 中的数据验证的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

211485 Excel 中数据有效性的说明和示例

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

谢谢您的反馈意见!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×