我必须对数据库的导出进行交叉检查,并检查所有值是否一致。每页有8张纸和6万行。
为此,我有一个名为Crosscheck
的主工作表,所有导出都以多个工作表进行。
我首先复制源列并进行循环。通过r
和.find (:=what)
语句对每一行(If
)进行分析。
我的问题是当我涉及多个变量时。我不知道会得到什么结果。对于许多交叉检查来说,它工作得很好,但现在我受以下限制:重复项太多,无法“仅仅”进行索引匹配(或者必须针对确切的行)
Crosscheck.Range("A"&r)
是我的信息来源,它为我提供了同一行下几列的内容。所有数据都来自其他工作表。
Crosscheck.Range("G"&r)
是一个变量。我现在不需要它了,但以后会需要它。
Crosscheck.Range("T"&r)
是另一个变量,并且是两个工作表之间的链接,允许我进行索引匹配或.find偏移量。
现在,我需要检查B列包含的行中的range("G"&r)
的值是否与Crosscheck.range("T"&r)
相同。
我还尝试执行以下操作:countif
数字在行内; if countif > 1 then True
,但即使我手动进行检查,都是假的。
'Set LineGroups = LG.Range("B:B").Find(what:=CrossCheck.Cells(r, 20), LookIn:=xlValues, LookAt:=xlWhole)
'If Not LineGroups Is Nothing Then
'CrossCheck.Range("U" & r).Value = Application.WorksheetFunction.Index(LG.Range("B:B"), _
'Application.WorksheetFunction.Match(CrossCheck.Range("G" & r), LG.Rows(LineGroups), 0)).Column
比方说,我必须在工作表2中查找“ 1234”是否在“ G_5678”的内部。 exemple
我希望结果是与CrossCheck.Range("G"&r)
匹配的单元格的值或该数字在该特定行中存在的指示符。