比较两个单独电子表格中的两列,然后从旁边的列输出信息

时间:2014-09-25 15:27:14

标签: excel powershell compare spreadsheet

我有一系列电子表格,其中包含远程桌面登录信息(用户名和登录时间,单独的列)以及另一个电子表格,其中包含每个人的用户名和他们所在的部门(再次单独列)。

我被要求收集每个部门登录的次数,而不是特定用户登录的次数。

所以我需要一些内容(powershell或者excel?)来读取RDP电子表格(用户名)上的第一列,然后将其与部门电子表格中的第一列(再次使用用户名)进行比较,如果匹配则输出到另一个电子表格部门(部门电子表格中的第二列),用户来自该部门。

我已经尝试了很多google'ing但是失败了,任何帮助,甚至指向我另一个资源,将不胜感激。

提前致谢,

克里斯

编辑:很抱歉没有说出我以前尝试过的东西,没有任何东西给我任何可用的输出......

所以这就是我到目前为止所尝试的......

我是powershell的新手(就像三个星期前一样,开始使用它)所以要温柔:)

$ RDP = Import-Csv'T:\ RDP Logons \ RDPLogons.csv'
$ DEPT = Import-Csv'T:\ RDP Logons \ UsersAndDept.csv'
比较$ RDP $ DEPT

所以这不起作用,接下来我打开电子表格(用PS),然后选择列并将它们放入变量(用户指定$ blah条目?)这很快超出了我的PS技能,但这就是就在我得到......

`#指定Excel文件的路径和工作表名称
$ FilePath =“T:\ RDP Logons \ RDPLogons”
$ SheetName =“RDPLogons”

`#使用Com接口创建一个Object Excel.Application $ objExcel = New-Object -ComObject Excel.Application

`#禁用'visible'属性,这样文档就不会在excel中打开了 $ objExcel.Visible = $ false

`#打开Excel文件并将其保存在$ WorkBook中 $ WorkBook = $ objExcel.Workbooks.Open($ FilePath)

`#加载工作表'RDPLogons' $ WorkSheet = $ WorkBook.sheets.item($ SheetName)

`#从WorkSheet中选择单元格范围
$ Data = $ WorkSheet.Range(“A3:A100”)。文字

然后$ Data变量没有显示任何内容,说实话,这是通过搜索谷歌获得的,所以当它没有工作时我难倒:(

感谢目前为止的回复:D

1 个答案:

答案 0 :(得分:1)

这是一个关于何时在Excel中使用vLookup的教科书示例。只需打开两张工作表,并在登录后使用列中的vLookup。用户名应该是键值,查找范围将是另一个电子表格,只需使用department字段的相对列号作为第三个参数。最后,函数中的第四个参数应为FALSE