我們有時需要在Excel中調取其他資料庫的資料,並且希望其他資料庫資料改變時,Excel中調取的資料也隨之動態改變。下面介紹在Excel中通過“建立資料庫查詢”(Microsoft Query)的方法來實現動態連結資料庫。
您在Excel中第一次使用“建立資料庫查詢”查詢資料時,如果系統未安裝Microsoft Query,系統會提示您安裝。
一、Excel連結vfp資料庫
vfp是常用的資料庫,先以此來介紹。假設從px.dbf表中取出相應學校的資料,已知學校的後5位代碼,資料所在欄位為x16,資料值為03行和06行相加,放入Excel單個儲存格中。
步驟如下:
1、點擊菜單“資料”—“匯入外部資料”—“建立資料庫查詢”,出現“選擇資料來源”對話方塊,選擇“Visual Foxpro Tables*”,按“確定”。如果您對SQL語句不是很熟悉的話,請使用預設的“查詢嚮導”建立。
(圖1)
2、在“configure connection”對話方塊中,按“Browse”按鈕選擇表px.dbf所在的路徑,按“ok”鍵。
(圖2)
3、在“查詢嚮導—選擇列”對話方塊中,選取查詢結果中的列,要選取的資料在“x16”欄位,所以將可用表“px”中的“x16”列移至“查詢結果中的列”,按“下一步”。
(圖3)
4、在“查詢嚮導—篩選資料”對話方塊中,因為此例中設定的條件在欄位學校代碼“xxdm”和行號“bh”,非欄位“x16”,所以點擊“下一步”,暫時不篩選資料。
(圖4)
5、在“查詢嚮導—排序次序”對話方塊中,因為此例中所取的是單個資料,所在點擊“下一步”。
(圖5)
6、出現“查詢嚮導—完成”對話方塊,因還要對資料進行篩選,所以選擇“在Microsoft Query中查看資料或編輯查詢”,點擊“完成”。
(圖6)
7、進入“Microsoft Query”,看到查詢結果x16列出了所有行的資料。
接下來要通過設定條件來篩選所需的資料。
點擊菜單“條件”—“增加條件(A)...”,欄位“bh”,運算子“等於”,指定值為“03”,按“添加”。
(圖7)
繼續“添加條件”對話方塊,選擇“或”,欄位“bh”,運算子“等於”,指定值為“06”,按“添加”。
(圖8)
繼續“添加條件”對話方塊,選擇“與”,欄位“xxdm”,運算子“等於”,指定值為“11201”,按“添加”後按“關閉”。
(圖9)
但是看到符合條件x16為空白,這是因為學校代碼的後五位為“11201”。
可以通過“顯示SQL”來直接修改條件陳述式,將SQL語句中px.xxdm="11201"改成right(px.xxdm,5)="11201",按“確定”。
(圖10)
也可以在“條件欄位”直接修改。
(圖11)
游標放在x16欄位,點擊“迴圈總計”,將查詢出的兩個值相加,當然也可以直接在SQL語句中修改。
(圖12)
8、關閉“Microsoft Query”,彈出“匯入資料”對話方塊,選擇“資料的置放位置”,選擇“$B$2”,按“確定”。
(圖13)
9、但我們發現顯示了標題列,真正的資料卻顯示到了$B$3,這時我們需要修改$B$2儲存格的“資料區域屬性”。點擊$B$2儲存格,按右鍵 菜單的“資料區域屬性”,彈出“外部資料範圍屬性”視窗,將“資料格式與布局”中“包含欄位名”等前面的對勾去掉,將“資料區域中的行數隨重新整理而更改的方 式”改成“用新資料覆蓋現有儲存格,並清除沒有使用的儲存格內容”,按“確定”。但還是有標題,沒有關係,點擊$B$2儲存格,按右鍵菜單的“重新整理資料” 即可。
(圖14)
10、如果px.dbf資料庫有所改變,那麼如何在Excel中重新整理,可以點選連結資料所在儲存格右鍵菜單中的“重新整理”手工重新整理;也可以在“數 據地區屬性”—“重新整理控制項”中選上“開啟活頁簿時,自動重新整理”(見圖14),從而在每次開啟活頁簿時,在“查詢重新整理”的提示框中按“啟動自動重新整理”按鈕刷 新(見圖15)。
(圖15)
11、如果需要編輯查詢,則點擊$B$2儲存格,按右鍵菜單的“查詢編輯”,如果出現“查詢嚮導”無法編輯此查詢的提示,只要按“確定”即可進入“Microsoft Query”。
12、$B$3儲存格查詢條件與$B$2相差的只是學校代碼,可以將$B$2儲存格複製到$B$3單位格,再用$B$3的“編輯查詢”來修改,修改一下學校代碼的值即可。
(圖16)
二、Excel連結SQL資料庫
連結SQL資料庫與連結vpf大致是相同的。這裡介紹的是串連兩表的查詢。
點擊菜單“資料”—“匯入外部資料”—“建立資料庫查詢”,出現“選擇資料來源”對話方塊,可直接選取所需連結的SQL資料庫名。
如果SQL資料庫有密碼的話,將提示輸入密碼,按“確定”。如果SQL SERVER服務管理員未開啟的話,將出現錯誤提示。
如果不使用“查詢嚮導”的話,可直接進入“Microsoft Query”。添加表news和表type,news表中的typeid和type表的typeid建立關聯。在“條件欄位”中選擇欄位名,並在“值”中 輸入條件值,這裡輸入的條件是type表的typeid欄位值為1且news表的topic中含有"小學生"。點擊選擇要輸出的欄位名,這裡選擇的是 type表中的typename欄位和news表的topic欄位。
(圖17)
當然,如果您對SQL語句熟悉,也可以直接輸入SQL語句。
接下來的步驟請參考一、中的8、至10、。
三、與其他資料庫(如access資料等)
這裡就不再贅述了,基本思路就是這樣了。小編順便推薦大家看一篇《在Word中插入Access、SQL資料庫資料》