我目前在Excel中建立一个仪表板来跟踪外汇交易。一个工作表用于向数据库添加新交易。在此工作表中,我有几个字段,用户需要填写才能将交易添加到数据库中。现在,我要避免用户在单元格中插入错误的数据(关于格式),从而使以后数据库的输出崩溃。
如何通过VBA定义此类条件?例如,字段日期的格式为YYYY-MM-DD,字段交易量为XX,YY,因此用户不能(偶然)插入X,YY等。对于下拉字段,通过在下拉菜单中定义输入很容易菜单本身,但是我需要一些手动填充单元格的解决方案。
然后我将定义一个msgbox弹出并通知用户符合所需的输入格式。
非常感谢您!
一些关键词会帮助我,然后我可以更深入地自己编写代码。
答案 0 :(得分:0)
除了使用代码,您不能使用数据验证并强制输入日期,数值等吗?
如果您将单元格格式定义为自定义'yyyy-mm-dd',则应用具有定义日期范围的数据验证,即使Excel输入dd / mm / yyyy,Excel也会自动为您设置格式,并且如果输入无效,则会发出警告已添加。
然后使用束线括号方法在Save处运行一个例程,该例程将模仿您的数据库将执行的操作,并在仍有无效数据的情况下发出警报,请参见https://docs.microsoft.com/en-us/office/vba/api/excel.workbook.beforesave
我还将锁定工作表,以避免用户添加行/列或移动单元格。 enter image description here