如何把 Excel 資料匯入 Visio

把 Excel 資料匯入 Visio,講的是 Link Data to Shapes,而不是 Data Visualizer:它把列綁到形狀上,可以一列一個形狀地建立,卻完全不畫連接線。Data 索引標籤的做法、唯一鍵規則與授權限制。

運作方式

  1. 由 Visio 桌面版應用開始

    資料連結沒有網頁版的等效做法——「資料連結只透過 Visio 桌面版應用提供,但在 Visio 網頁版裡你可以查看已連結資料的圖表。」在各訂閱之中,桌面版應用隨 Visio Plan 2 而來,而 Microsoft 比較表上連結與資料形狀那幾列都是 Plan 2 的。Microsoft 沒有面向 macOS 的 Visio 桌面版應用,所以 Mac 在這裡是一部檢視器。Microsoft 的文件對買斷制 Visio Standard 有沒有 Data 索引標籤說法互相矛盾,所以請在你面前那部電腦上確認,而不是在規格表上確認。

  2. 圍繞一欄唯一值準備工作簿

    Microsoft 的準備規則就是全部關鍵:「為令匯入過程順利,請確保你資料中有一欄對每一列都是唯一值,而且那些值與形狀上的文字相符。」所以把工作表攤平成一行標題、一列一筆紀錄,不要合併儲存格,不要空白分隔列,並加上或指定一欄穩定的識別值——一個帳戶編號、一個步驟 ID、一個員工編號。凡是你打算綁到現有形狀上的東西,都必須與那些形狀上的文字相符。

  3. 由 Data 索引標籤匯入

    在 Data 索引標籤上,Quick Import 是 Excel 的快速途徑:揀工作簿,然後揀工作表。Custom Import 會打開 Data Selector 精靈,它有記載的來源是一個 Microsoft Excel 工作簿、一個 Microsoft Access 資料庫、一個 Microsoft Windows SharePoint Services 清單、一個 Microsoft SQL Server 資料庫、另一個 OLEDB 或 ODBC 資料來源,或者一個此前建立的連線。Microsoft 自己那幾頁對周邊那個功能區群組有三種不同說法,所以請直接去到 Data 索引標籤讀上面有甚麼,而不是去找一個被承諾過的按鈕名稱。

  4. 揀好重新整理時用來比對的那個識別值

    精靈有一頁叫「Configure Refresh Unique Identifier」,而它正是人們一路按過去的那一步。你在那裡指定的那一欄,就是 Visio 日後用來判斷哪一列屬於哪一個形狀的依據,所以揀錯或揀了不唯一的一欄並不是外觀上的小事——它令重新整理由一開始就不可靠,而且是在這裡定下、不是日後修得好的。揀一個不會被人改動的值:帳戶編號而不是帳戶名稱,步驟 ID 而不是步驟描述。重新整理比對不到一列時會怎樣,是 /yue/guides/用excel更新visio流程圖 的題目。

  5. 把列放上頁面,或者綁到已經在那裡的形狀上

    兩個方向。要由資料建立形狀,「把一列或一組列由 External Data 視窗拖到繪圖中的空白位置」——「你按下的那個形狀,會按你拖到繪圖上的每一列各出現一個」。要把資料附到你已經畫好的形狀上,選中它們並用該列右鍵選單裡的 Link to Selected Shapes,或者執行 Automatically Link 精靈來大批比對列與形狀。基數關係是不對稱的:一列可以餵多個形狀,但每個形狀只連結到一列。

  6. 套用資料形狀,然後自己畫連接線

    形狀連結好之後,去 Data 索引標籤的 Display Data 群組,打開 Data Graphics 圖庫。「Displayed as」下拉選單剛好提供四種——Text、Data Bar、Icon Set 和 Color by Value——而 No Data Graphic 會把它移除。然後人手接駁圖表:把指針停在第一個形狀上,點選指向你要到達的那個形狀的小箭嘴,或者切到 Home 索引標籤上的連接線工具(Ctrl+3)並由一個形狀拖到另一個,再用 Ctrl+1 或 Esc 回到指針工具。

常見問題

Link Data to Shapes 與 Data Visualizer 是同一回事嗎?

不是,而把兩者混淆正是一次匯入令人失望的常見原因。Data Visualizer 是一組 Visio 桌面版範本,由一張 Excel 表生成流程圖——形狀、連接線、分支標籤與泳道——而且雙向同步,靠的是 Data Tools Design 索引標籤上的 Refresh Diagram 與 Update Source Data。Link Data to Shapes 在 Data 索引標籤上運作,把列附到形狀上,不畫連接線,而且資料只朝一個方向流動,由來源到繪圖。Microsoft 把兩者在訂閱之中都記載為 Plan 2。另一個見 /yue/guides/如何使用visio-data-visualizer 。

把 Excel 資料匯入 Visio 會自動建立形狀嗎?

可以,而這與坊間很多說法相反。Microsoft 自己的指示是「把一列或一組列由 External Data 視窗拖到繪圖中的空白位置」,而且「你按下的那個形狀,會按你拖到繪圖上的每一列各出現一個」——所以你在形狀庫裡選中的那個形狀,會一列蓋一次。從來不會被建立的是連接線。你得到的是一片帶著資料、擺在你放下位置的形狀,而它們之間的流程仍然是一項繪圖工作。把資料綁到你已經擺好的形狀上是另一個方向,經 Link to Selected Shapes 或 Automatically Link 精靈。

連結之後,我可以在 Visio 裡面編輯那個 Excel 檔案嗎?

連結資料不可以。Microsoft 說了兩次而且說得很平:「你無法透過在 Visio 圖表中作出改動,來更新 Visio 圖表所連結的資料來源」,以及「你無法透過改動繪圖中的資料來重新整理你的資料來源」。工作簿是正本;繪圖由它讀取。Visio 裡唯一的例外是 Data Visualizer 圖表,它確實會透過 Update Source Data 寫回——而在那裡要小心的是公式撐不過去,因為當你揀了 Overwrite 之後,「Visio 會把公式轉換為公式結果」。兩套機制的重新整理行為在 /yue/guides/用excel更新visio流程圖 裡講。

如果我的團隊在瀏覽器裡做事,或者用 Mac,怎麼辦?

那麼資料連結對你基本上是關上的:Microsoft 沒有面向 macOS 的 Visio 桌面版應用,並且表示 Microsoft 365 也沒有這樣的計劃;連結只限桌面版;而一張連接資料的圖表在 Visio 網頁版裡可以查看但不能編輯。要清楚這樣的代價,因為連結真正的強項是資料形狀——逐個形狀套用的 Text、Data Bar、Icon Set 與 Color by Value——而一個會把自己的數字畫成長條或交通燈的形狀,是流程導向的工具替代不了的。如果你需要的是流程而不是那套儀表,QueryChart 走的是相反的做法:列就是圖表,所以編輯資料就是編輯圖表,在任何現代瀏覽器裡都可以,而連接是一欄列號,不是你要畫出來的東西。這一頁上的流失風險示例就是 /yue/templates/資料驅動流程圖 ,而且可以就地編輯。

流程圖指南的更多內容