我有2张excel表。一个是资产映射(标记给每个员工的资产)&另一个有组织人数(员工ID和所有有效员工的姓名)。现在我想检查是否所有资产都标记为正确的关联(即,标记为资产的员工当前应该在组织中工作),如果没有,我需要获取标记为无效用户的资产的详细信息。为此,我需要从2张excel表中获得一个连接条件。应该将结果加载到数据表(我可以在数据网格视图中显示或用于撰写邮件给高级领导)。
所以,我想从这两个excel源加载数据表,使用下面类似的查询
select a.[Asset ID], a.[EmpNo] from [AssetMapping$] as a
Where a.[EmpNo] Not IN (select b.[EmpID] from [EmployeeDetails$] as b)
但是,在将数据加载到数据表时,我无法引用两个excel表(但如果数据存在于同一个excel中的两个不同表中,我可以这样做,这不是我想要的。)
请帮助我从2个不同的Excel工作表中获取所需的数据到单个数据表。
提前致谢。
答案 0 :(得分:1)
如果您使用OledDb提供程序(MS Jet数据库引擎),请尝试使用IN语句。
select a.[Asset ID], a.[EmpNo] from [AssetMapping$] as a Where a.[EmpNo] Not IN (select b.[EmpID] from [EmployeeDetails$] IN 'C:\Data\SecondWorkbook.xls' 'Excel 8.0;' as b)
有关详细信息,请参阅:How To Use ADO.NET to Retrieve and Modify Records in an Excel Workbook With Visual Basic .NET
我希望它会有所帮助。
请参阅我在CodeProject上的文章:http://www.codeproject.com/Tips/702769/How-to-Get-data-from-mulitple-Workbooks-using-one