我有一组源数据,如下所示:
Project Series Paper
Unit 1 1806 1
Unit 1 1806 2
Unit 1 1806 3
Unit 2 1903 1
Unit 2 1903 2
Unit 2 2003 1
Unit 2 2003 2
Unit 2 2103 1
Unit 2 2103 2
Unit 3 1806 1
Unit 3 1906 1
这些数据通常存在于数据库中,并且非常庞大。大约有50万行。
我们也有用户将输入项目,系列和论文的组合,然后他们将点击提交。
在数据被提交之前,我希望数据从源数据中得到验证,并将告诉用户他们输入的组合是否有效。
如下所示:
Project Series Paper Valid?
Unit 1 1806 1 No
Unit 2 1906 2 Yes
我能想到的最简单的解决方案是对数据进行concatenate
并对每个数据进行查找。然而,这将对数据库造成不必要的繁重负载,其中将必须创建一个包含50万行数据的新列……
我想知道在VBA中是否有一个循环函数可以检查来自源数据的组合,并让用户知道它是否有效?
我真的很感谢你的意见。
发布于 2018-06-02 02:59:45
理想情况下,这应该在SQL update和检查主键冲突中完成,但是,要在Excel中执行此操作,可以使用CountIfs
函数并检查数据集中是否有匹配项。
因此,假设您的DB表在range中,假设您的输入检查器值在单元格F2:H2
中,您可以在单元格I2
中对Valid?
使用以下公式
I2: =IF(COUNTIFS(A1:A500000,F2,B1:B500000,G2,C1:C500000,H2)=0,"Yes", "No")
这应该能起到作用。
https://stackoverflow.com/questions/50646353
复制相似问题