Html 使用Powershell使用Excel中的数据查询网站

Html 使用Powershell使用Excel中的数据查询网站,html,excel,powershell,Html,Excel,Powershell,我想使用powershell脚本从excel工作表中获取数据,以查询在线数据库 我使用此代码从powershell打开电子表格 $xl = New-Object -COM "Excel.Application" $xl.Visible = $true $wb = $xl.Workbooks.Open("C:\Documents\Book4.xlsx") $ws = $wb.Sheets.Item(1) 但我真的无法处理电子表格ie参考单元格。 我需要的是选择单个单元格的内容,存储在变量中,并用

我想使用powershell脚本从excel工作表中获取数据,以查询在线数据库

我使用此代码从powershell打开电子表格

$xl = New-Object -COM "Excel.Application"
$xl.Visible = $true
$wb = $xl.Workbooks.Open("C:\Documents\Book4.xlsx")
$ws = $wb.Sheets.Item(1)
但我真的无法处理电子表格ie参考单元格。 我需要的是选择单个单元格的内容,存储在变量中,并用于填充在线数据库的查询

我使用此代码访问网站url

$IE=new-object -com internetexplorer.application
$IE.navigate2("http://www.google.com")
$IE.visible=$true
但我无法填写表格或查询数据库

请问如何使用powershell执行此操作? 谢谢

使用$ws列

示例(获取第2列第2行中的文本):

然后,您可以使用查询字符串使用并导航到google,例如:

$IE.navigate2(("http://www.google.com?q={0}" -f $query))
您还可以使用范围来获取单元格(如果有多个)并选择其文本

示例(获取A2-A99之间的单元格,然后选择文本):


然后,如果您想迭代查询,您将有一个带有查询的数组。

非常感谢大家

这段代码适用于google,尽管在浏览器启动时可能需要对查询进行一些格式化

#To open spreadsheet
$xl = New-Object -COM "Excel.Application" 
$xl.Visible = $true
$wb = $xl.Workbooks.Open("C:\Users\Documents\Book4.xlsx")
$ws = $wb.Sheets.Item("Team Sheet") #Incase of multiple sheets
$queries = $ws.Range("D9")|select Text #specify cell use ("D9", "D99") for range 
#$queries 

#To open urls
$IE=new-object -com internetexplorer.application
$IE.navigate2(("http://www.google.com?q={0}" -f $queries))
$IE.visible=$true

以防有人需要它

您也可以使用范围运算符:$ws.range(“A1”).text,它将显示A1单元格的内容好主意,用示例更新答案。谢谢大家,我如何引用电子表格,我的excel文件有多个电子表格您的代码中已经有了:$wb.Sheets.Item(1)。这将选择第一张图纸。如果有多个,请将其与第(2)项、第(3)项一起选择,或直接使用$wb.sheets[index]进行概述使用$wb.sheets |选择对象-属性名称
$queries = $ws.Range("A2","A99")|select Text
#To open spreadsheet
$xl = New-Object -COM "Excel.Application" 
$xl.Visible = $true
$wb = $xl.Workbooks.Open("C:\Users\Documents\Book4.xlsx")
$ws = $wb.Sheets.Item("Team Sheet") #Incase of multiple sheets
$queries = $ws.Range("D9")|select Text #specify cell use ("D9", "D99") for range 
#$queries 

#To open urls
$IE=new-object -com internetexplorer.application
$IE.navigate2(("http://www.google.com?q={0}" -f $queries))
$IE.visible=$true