通过匹配另一个电子表格中的数字来过滤Excel电子表格中的记录

时间:2014-11-04 22:28:03

标签: excel comparison

我有网站日志(制表符分隔的文本文件),其中包含组成信息(名称,电子邮件等...)。我使用Raiser's Edge将这些日志导入我的ImportOmatic数据库。 ImportOmatic将为我提供一个异常日志,显示未导入的记录。请注意,这不是关于Raiser的Edge或ImportOmatic的问题(尽管如果ImportOmatic异常日志实际上具有未导入的数据而不仅仅是行号,那将会很好。)

示例网站日志:

ImportID    KeyInd  FirstName   LastName    OrgName AddrImpID   AddrInfoSrc PrefAddr    AddrSendMail    AddrLines   AddrCity    AddrState   AddrZip AddrCountry ConsCode    PhoneAddrImpID2 PhoneNumber2    PhoneType2
InternetI201303999  I   Joshua  Jackson     InternetA201303999  Internet    Yes Yes 194 Notch Ln.   Reeds Spring    MO  65737   UNITED STATES   PARTNER InternetA201303999  jj@anti-exe.com E-Mail

示例异常日志:

Line 1: Data too long for field: Max length = 3 for State [Object: 'CConstitAddress', PK: '-1', Import ID: '', Desc: '194 Notch Ln., Reeds Spring', Field: 'State', Value: 'Missour'] -->BBREAPI.CRecordClass.Save()-->ImportOM.CImport.Process()

在这个特殊情况下,我拼错了Missouri(故意),导致了例外。

我将网站日志导入一个工作表,并将异常日志导入另一个工作表(同一文件)。 Excel给出网站日志行号(我的记录将是第2行,因为标题是第1行)。我将异常日志导入为空格分隔(我想我可以使用:-delimited)文本文件(我的例外是第1行,因为它不导入标题)。我应该能够做一个公式去剥离:(=LEFT(B1, LEN(B1)-1))然后加1(=B1+1),这样我就有一列行号应该与Excel给出的行号相匹配网站日志。如果没有办法将异常的行号列与Excel创建的行号相匹配,我总是可以创建一个额外的列,只需填写一系列数字。

我想要做的是,不知何故,使用异常日志的Line x作为过滤器,仅显示需要手动输入的记录。我在想反向过滤器(隐藏好数据并显示坏数据)。

显然,我没有让它工作(否则我不会问)。我错了吗?我确信这可以做到,但它让我不知所措。

1 个答案:

答案 0 :(得分:1)

如果您的错误列表位于ColA中的Sheet2上(每个单元格一行,无需拆分":"),您可以使用以下内容为导入的数据添加一列一个公式:

=ISERROR(MATCH("Line " & ROW()-1 & ":*",Sheet2!A:A,0))

输出:

TRUE  --> was imported
FALSE --> had an error