比賽寫結果集我有兩個數據源的Excel(2010)表:Excel的VBA - 搜索範圍,並連接SQL ADODB記錄集在
- Access 2010中的DB
- SQL Server 2008 R2的
我有A列中的數據:我來自Access DB。在A列中,我有記錄的ID,這個ID對應於我的SQL DB表中的ID列。
我想通過在A列中的ID進行搜索,如果在SQL數據庫的ID相匹配,我想從「coOverview」從SQL表中列J.
列在顯示數據總之,「如果ID = COID,然後寫coOverView列J」
我已經成功地能夠連接並檢索所需的記錄集和複製/向下填充J列,所以我知道我能夠成功連接並讀取SQL表中的數據。現在我需要在coOverview數據從我的SQL表複製只有在ID A列ID
Sub RetrieveOverview()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim ConnectionString As String
Dim query As String
Set cn = New ADODB.Connection
ConnectionString = "Provider=SQLOLEDB;Password=***;Persist Security Info=True;User ID=*****;Data Source=***;Initial Catalog=**"
cn.Open ConnectionString
cn.CommandTimeout = 900
query = "SELECT coOverview FROM SQLTable"
rs.Open StrQuery, cn
Sheets(1).Range("J2").CopyFromRecordset rs
End Sub
我不知道我是否應該在條件中的SQL語句或循環相匹配。
要清楚,你拉在兩個數據集中,並將它們存儲在Excel單元格?如果是這樣,我會將兩個範圍都拉入數組並寫入一個簡單的比較循環。如果您擁有合理數量的數據,應該足夠快。 – Kyle
Kyle, 不,我沒有將兩個數據集都存儲在單元格中。我將一個數據集存儲在一個範圍(A:I)中,我想使用列A中的ID並將其與我在我的SQL語句中連接的SQL DB中表中的ID匹配。找到匹配的ID後,我想複製SQL表中「coOverview」列中的相應數據,並將其寫入Excel電子表格中的J列。 – sshel207
你現在遇到的問題是什麼?你說你已經成功地連接並檢索了所需的記錄集並複製/填寫了J列。除此之外,你還想做什麼? –