Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用VBA验证多个单元格数据_Vba_Excel - Fatal编程技术网

使用VBA验证多个单元格数据

使用VBA验证多个单元格数据,vba,excel,Vba,Excel,我陷入了困境,谁能帮帮我。 我试图检查每个属性是否有特定的属性id | Property | Property_ID | Date | |----------|-------------|------------| | A | ABC | 10/12/2018 | | A | XYZ | 08/11/2018 | | A | LMN | 12/05/2018 | | A | IJK

我陷入了困境,谁能帮帮我。 我试图检查每个属性是否有特定的属性id

| Property | Property_ID | Date       |
|----------|-------------|------------|
| A        | ABC         | 10/12/2018 |
| A        | XYZ         | 08/11/2018 |
| A        | LMN         | 12/05/2018 |
| A        | IJK         | 15/05/2018 |
| B        | ABC         | 13/12/2018 |
| B        | XYZ         | 14/10/2018 |
| B        | IJK         | 15/12/2018 |
| C        | LMN         | 01/12/2018 |
| C        | XYZ         | 17/05/2018 |
例如:-验证每个属性是否具有属性“ABC、XYZ、LMN、IJK”。同时验证每个日期是否大于2018年10月12日

| Property | Property_ID | Date       |
|----------|-------------|------------|
| A        | ABC         | 10/12/2018 |
| A        | XYZ         | 08/11/2018 |
| A        | LMN         | 12/05/2018 |
| A        | IJK         | 15/05/2018 |
| B        | ABC         | 13/12/2018 |
| B        | XYZ         | 14/10/2018 |
| B        | IJK         | 15/12/2018 |
| C        | LMN         | 01/12/2018 |
| C        | XYZ         | 17/05/2018 |

我在代码中看到了几个问题:

| Property | Property_ID | Date       |
|----------|-------------|------------|
| A        | ABC         | 10/12/2018 |
| A        | XYZ         | 08/11/2018 |
| A        | LMN         | 12/05/2018 |
| A        | IJK         | 15/05/2018 |
| B        | ABC         | 13/12/2018 |
| B        | XYZ         | 14/10/2018 |
| B        | IJK         | 15/12/2018 |
| C        | LMN         | 01/12/2018 |
| C        | XYZ         | 17/05/2018 |
  • 在循环中设置“有效日期”值
    A.它永远不会改变
    B它不会与任何东西进行比较以触发异常。
    C当前“日期”应从循环外的第一条记录开始初始化,并且应基于第一个值设置
    Date\u验证
    ,例如:
    Date\u validation=Date=Trim(sht1.范围(“c2”))

    因此,“日期验证”仅在日期有效时设置为真,任何假值都是例外。
    D旁注:名为“Date”的变量可能会遇到关键字问题。。。我可以推荐“PropDate”或“PromoDate”吗 E读取的每一新行(i递增)应该测试的不仅仅是“日期”验证
  • 如果您的
    如果当前值=以前的值,则
    为false(即新属性),您没有检查是否满足所有条件,只检查您的“现在位于新属性上”。相应的
    Else
    应该是
    ElseIf
    ,例如:
    ElseIf not(ABC、IJK、XYZ和…以及日期验证)’仅当全部为false时
    '.... 显示错误消息
    '如果ABC(etc)。。。
    '触发器需要重置为false
    '连同数据验证
  • 在代码中的消息点处,
    i
    已经增加,并且位于新记录上。它应该读(某物)
    i-1

  • 顺便说一句,如果声明为布尔值,ABC etc将初始化为False。您可以对这两个If-Else-If块使用一个Select-Case语句。您的问题是什么?你一个也没问。你的代码有什么问题?你会犯什么错误?在哪里?发生了什么与您预期的情况相比?问题:-是否有更简单的方法来验证每个属性(A2、A3、A4、A5)是否具有如上所述的相应属性id(B2、B3、B4、B5)。预期内容:如果您声明变量的任何PropertyId都不存在any Property_ID,我想写一条注释?哪里(提示:不要使用隐式声明,始终将Option Explicit放在模块顶部)。
    Date=“10-12-2018”
    :是否确实要更改系统?