我在这里完全超出了我的深度:可以这样做吗?如果是这样,我应该考虑什么方法?
我会定期收到一个包含可变数量工作表的电子表格。每个工作表都有相同的标题行,但下面的行中的值不同。在一列中是一个标识号,指示唯一用户,我需要确定这些工作表上的任何标识符列之间是否存在交集。这是一个简化的示例,其中第一个和第三个工作表有 abc789 的交集,但在 Worksheet 2 中没有相交值。我想知道何时有交集,以及哪些工作表之间存在交集:
工作表 1: 身份证号 • abc123 • abc456 • abc789 工作表 2: 身份证号 • abc234 • abc345 • abc912 工作表 3: 身份证号 • abc789 • abc567 • abc678
如果可以做到,我怀疑另一个问题:以今天3张,明天10张的方式来做!为了回答这个问题,我尝试为未知数量的列设置变量以进行比较,但显然失败了:
Dim iArraySize As Integer
Dim iTabCounter As Integer
Dim iLoopCounter As Integer
iTabCounter = ActiveWorkbook.Sheets.Count
For iLoopCounter = 3 To iTabCounter
iArraySize = ActiveWorkbook.Sheets(iLoopCounter).Range("C2", Range("C2").End(xlDown)).Count
dim aID & iloopcounter as Variant 'this line fails on compile with "expected end of statement" highlighting the ampersand
aID1 = Range("C2", Range("C2").End(xlDown)).Value
Next iLoopCounter
这是一个失败的原因吗?我应该决定自己手动检查吗?