萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 辦公室軟體 >  >> Excel 教學 >> Excel 綜合

Excel 動態連結外部資料庫:Microsoft Query 實作 VFP/Access/SQL 即時查詢

需在 Excel 即時查詢 VFP、Access、SQL Server 等外部資料庫,且資料庫更新時 Excel 自動同步?透過「新增資料庫查詢」(Microsoft Query)建立 ODBC 連線,可實現動態連結、參數化查詢、定時重新整理。

前置準備

  • 確認已安裝 Microsoft Query(首次使用會提示安裝)。
  • 目標資料庫需有對應 ODBC 驅動程式(VFP 用 Visual FoxPro ODBC Driver)。

實作:Excel 連結 VFP 資料庫(px.dbf)

需求:依學校代碼後 5 碼(11201),篩選 bh = 03 或 06 的記錄,將 x16 欄位值相加,結果放入單一儲存格。

步驟 1~6:建立查詢骨架(使用查詢精靈)

  1. 「資料」 → 「取得外部資料」 → 「新增資料庫查詢」 → 選 「Visual FoxPro Tables」 選擇資料來源。
  2. 「設定連線」 → 「瀏覽」 選取 px.dbf 所在資料夾 設定連線。
  3. 「選擇欄位」:將可用表 px 的 x16 移至「查詢結果中的欄位」 選擇欄位。
  4. 「篩選資料」:暫時不設 → 下一步 篩選資料。
  5. 「排序順序」:不需排序 → 下一步 排序順序。
  6. 「完成」:選 「在 Microsoft Query 中檢視資料或編輯查詢」 → 完成 完成精靈。

步驟 7:在 Microsoft Query 中設定複雜條件

  • 選單 「準則」 → 「新增準則」:
    1. bh = 03 → 「新增」
    2. 選 「或」 → bh = 06 → 「新增」
    3. 選 「和」 → xxdm = 11201 → 「新增」 → 「關閉」 條件1 條件2 條件3。
  • 發現 xxdm 需比對後 5 碼 → 點選 「SQL」 按鈕 SQL檢視,將 px.xxdm="11201" 改為 RIGHT(px.xxdm,5)="11201" → 確定。或在「準則」欄直接修改 準則欄修改。
  • 點選 x16 欄位 → 工具列 「加總」(Σ) → 兩筆值自動相加 加總。

步驟 8~10:匯回 Excel 與屬性設定

  1. 關閉 Microsoft Query → 彈出「匯入資料」 → 選 「現有工作表」 位置 $B$2 匯入資料對話框。
  2. 發現 B2 顯示標題列,資料在 B3 → 右鍵 B2 → 「資料區域屬性」 外部資料區域屬性:
    • 取消勾選 「包含欄位名稱」。
    • 「資料區域中的列數隨重新整理而變更」 選 「用新資料覆蓋現有儲存格,並清除未使用的儲存格」。
  3. 右鍵 B2 → 「重新整理」 即見正確結果。

步驟 11:自動重新整理設定

  • 「資料區域屬性」 → 「重新整理控制」 → 勾選 「開啟活頁簿時自動重新整理」 重新整理控制。
  • 或設定固定間隔(分鐘)自動重新整理。

步驟 12:複製查詢至其他儲存格(如 B3 查不同學校)

  • 複製 B2 到 B3 → 右鍵 B3 → 「編輯查詢」 → 修改學校代碼條件值即可。

擴充應用

  • 參數化查詢:在 Microsoft Query 中設定參數([輸入學校代碼]),Excel 端可用儲存格參考作為參數值,達成「儲存格輸入代碼 → 自動查詢」互動效果。
  • SQL Server/Access/Oracle:同樣流程,只需在步驟 1 選擇對應 ODBC 資料來源(SQL Server 用 SQL Server Native Client,Access 用 Microsoft Access Driver)。
  • Power Query (Excel 2016+ 內建):更現代、更強大的替代方案,支援更多資料來源、視覺化編輯步驟、M 語言腳本。
copyright © 萬盛學電腦網 all rights reserved