我有网站日志(制表符分隔的文本文件),其中包含组成信息(名称,电子邮件等...)。我使用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
作为过滤器,仅显示需要手动输入的记录。我在想反向过滤器(隐藏好数据并显示坏数据)。
显然,我没有让它工作(否则我不会问)。我错了吗?我确信这可以做到,但它让我不知所措。
答案 0 :(得分:1)
如果您的错误列表位于ColA中的Sheet2上(每个单元格一行,无需拆分":"),您可以使用以下内容为导入的数据添加一列一个公式:
=ISERROR(MATCH("Line " & ROW()-1 & ":*",Sheet2!A:A,0))
输出:
TRUE --> was imported
FALSE --> had an error