【发布时间】:2016-07-09 00:18:23
【问题描述】:
这可能必须在 VBA 中完成,这很好。
一些背景信息:我想在 Excel 的数据验证中使用文本长度选项。我需要限制为 60 个字符或更少。不过,这很容易。
我的问题是,如果用户超过了这个 60 个字符的阈值,我不希望我的错误警报保持静态并给出一个通用响应说“你必须保持低于 60 个字符......”我希望它实际上count 用户尝试在单元格中放置的字符数,然后在错误警报弹出窗口中我希望它更具体,例如:You have exceeded the 60-character limit by ## characters. Please shorten the input and try again. 有人知道解决方案吗? p>
【问题讨论】:
-
Worksheet_Change(或Workbook_SheetChange)事件宏可以替代数据验证并添加更多功能。
-
请不要在所有大写字母中输入您的问题标题。大喊大叫是不礼貌的,它不会让你更快地得到答案。它还使您的标题更难阅读,而且相当粗鲁和烦人。适当大小写的文本更容易阅读。您在主页上看不到任何其他全部大写的问题标题,是吗?
-
我评价你实际上使用 VB.NET 在 Visual Studio 中编写了一个 .VSTO 插件,纯粹是因为在我看来它更容易一点,而且你可以做更多,例如,你可以在控件上使用事件处理程序,因此您可以访问文本框的 TextChanged 事件以显示错误消息或其他内容,但仅显示一秒钟左右,然后继续或不显示。在我看来,在 VBA 中,它有点受限,例如,没有事件处理程序(据我所知),就像......没有 textbox.contains 方法......但是 VB.NET 却有。试试看 :) 这不是太难......会试一试。
-
没问题。你能记住以后的帖子吗? :-)
标签: excel vba validation error-handling