簡體   English   中英

使用Powershell從Excel查詢數據的網站

[英]Query a website with data from Excel using 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=new-object -com internetexplorer.application
$IE.navigate2("http://www.google.com")
$IE.visible=$true

但是我無法填寫表格或查詢數據庫。

請我如何使用Powershell做到這一點? 謝謝

使用$ ws.Columns

示例(在第2列第2行中獲取文本):

$query = $ws.Columns[2].Rows[2].Text

然后,您可以使用查詢字符串使用並導航到Google,例如:

$IE.navigate2(("http://www.google.com?q={0}" -f $query))

您也可以使用Range來獲取單元格(如果有多個單元格)並選擇其文本。

示例(獲取A2-A99之間的單元格,然后選擇文本):

$queries = $ws.Range("A2","A99")|select Text

然后,如果要遍歷查詢,將有一個考慮了查詢的數組。

十分感謝大家。

盡管您可能需要在瀏覽器啟動時對查詢進行某種格式設置,但是此代碼對於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

萬一有人需要

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM