Skip to main content

如何在 Excel 中滑鼠懸停時顯示圖像?

Author: Sun Last Modified: 2025-08-06

有時候,您可能希望通過僅在用戶將滑鼠懸停在特定單元格上時才顯示圖像,來創建更具互動性的 Excel 工作表。例如,這對於提供視覺參考、說明或與數據條目相關的產品圖像特別有用,而無需在工作表中一直顯示圖形從而顯得混亂。本指南將介紹幾種方法,以實現當滑鼠懸停在 Excel 中時顯示圖像作為彈出窗口或工具提示的效果,每種方法都有其適用場景和限制。根據您的需求——無論是需要圖像顯示、純文字工具提示還是更高級的互動性——不同的解決方案可能更適合您的工作流程。

使用註釋插入彈出圖片

使用 VBA 動態顯示滑鼠懸停時的彈出圖像

使用資料驗證輸入訊息顯示工具提示


arrow blue right bubble 使用註釋插入彈出圖片

在 Excel 中,僅在滑鼠懸停於單元格上方時顯示圖像的一個實用方法是將圖像插入到註釋中(在某些較新版本的 Excel 中也稱為備註)。這種方法提供了一種簡單的方式來創建彈出圖像,當用戶將滑鼠指向該單元格時圖像會出現。

此方法的常見應用場景包括顯示參考圖表、產品圖片或數據點的解釋性圖像。該技術的主要優勢在於它不需要使用 VBA 或外部插件,因此具有廣泛的兼容性且易於管理。然而,在 Excel Online 中不支持註釋,並且與更先進的解決方案相比,註釋在格式和互動性方面可能存在局限性。

1. 選擇您想要彈出圖片的單元格。右鍵單擊該單元格,然後從上下文菜單中選擇 插入註釋(或根據您的版本選擇「新建備註」)。參見截圖:

pop up image by inserting a comment

2. 當註釋框出現後,將指針移到註釋邊緣,直到它變為帶箭頭的十字形狀,右鍵單擊邊框,然後選擇 格式化註釋。參見截圖:

format the comment

3. 在 格式化註釋 對話框中,點擊 顏色和線條 標籤。接下來,點擊 顏色 下拉箭頭並從列表中選擇 填充效果。參見截圖:

set options in the Format Comment dialog box

4. 切換到彈出對話框中的 圖片 標籤。點擊 選擇圖片,導航到並選擇您要顯示的圖像,然後點擊 插入。參見截圖:

select image to insert into the comment

注意:在 Excel 2013 或更高版本中,點擊 填充效果 對話框中的 選擇圖片 按鈕後,請確保使用 從文件選項,選擇您的圖像,然後點擊 插入

5. 點擊每個對話框中的 確定 以確認更改並關閉它們。現在,您的圖像將出現在所選單元格的註釋中。參見截圖:

an image is inserted into the comment

6. 您可能希望通過刪除默認的用戶名文本來自定義註釋。單擊註釋文本並刪除名稱,只留下圖像。
an image pops up when hovering over a cell

提示:為了確保註釋僅在滑鼠懸停時顯示而不總是保持可見,請確保 審閱 標籤中的 顯示所有註釋 未啟用。

turn off the Show All Comments feature

此方法非常適合在小型至中型工作表中添加偶爾的彈出圖像,但如果您需要高級互動性、動態圖像更新或在大型表格中支持許多圖像,請考慮使用下面描述的基於 VBA 或互動單元格連接的方法。

常見問題包括如果註釋被隱藏或註釋框太小,圖像可能無法正確顯示。始終檢查圖像尺寸和註釋框大小以獲得最佳外觀。


arrow blue right bubble 使用 VBA 動態顯示滑鼠懸停時的彈出圖像

對於需要更加靈活控制圖像何時以及如何出現的場景——例如,當您滑鼠懸停在特定單元格上時顯示自定義彈出窗口或豐富的工具提示——建議使用 VBA 解決方案。這種方法允許您以程式方式顯示和隱藏圖像,非常適合大型數據集、儀表板或根據數據改變圖像的使用情況。

此方法最適合以下需求:

  • 根據滑鼠懸停的單元格顯示不同大小或格式的彈出圖像
  • 支持動態更新圖像,同時最小化工作表的雜亂
  • 相比標準的基於註釋的圖像,可以更好地控制顯示行為

潛在缺點:VBA 解決方案在 Excel Online 或未啟用宏的用戶中不受支持,並且可能需要更多的設置和基本的 VBA 知識。分發這些文件時應小心,因為宏的安全設置可能會影響其運行。

操作步驟:

1. 打開您要在其上顯示彈出圖像的工作表,右鍵單擊工作表標籤,然後從上下文菜單中選擇 檢視程式碼

2. 複製並將以下代碼粘貼到工作表程式碼窗口(不是標準模組)中:

Dim popUpPic As Picture
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error Resume Next
    
    If Not popUpPic Is Nothing Then
        popUpPic.Delete
    End If
    
    ' Optional: Only run for a specific range, e.g. B2:B5
    If Not Intersect(Target, Range("B2:B5")) Is Nothing Then
        Set popUpPic = ActiveSheet.Pictures.Insert("C:\YourImagePath\yourimage.jpg")
        
        With popUpPic
            .Top = Target.Top
            .Left = Target.Offset(0, 1).Left
            .Height = 80 ' Adjust size as needed
            .Width = 80
            .Placement = xlMoveAndSize
        End With
    End If
End Sub

注意

  • 修改 Range("B2:B5") 以匹配您希望彈出圖像出現的單元格範圍。
  • "C:\YourImagePath\yourimage.jpg" 替換為您的真實圖像路徑。
  • 如果您想為每個單元格使用不同的圖像,請嘗試以下 VBA 代碼。
    Dim popUpPic As Picture
    'Updated by Extendoffice.com 2025/7/11
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        On Error Resume Next
    
        If Not popUpPic Is Nothing Then
            popUpPic.Delete
        End If
    
        If Not Intersect(Target, Me.Range("B2:B5")) Is Nothing Then
            Dim imgPath As String
    
            Select Case Target.Address
                Case "$B$2"
                    imgPath = "C:\Users\Win10x64Test\Desktop\fruits\durian.jpg"
                Case "$B$3"
                    imgPath = "C:\Users\Win10x64Test\Desktop\fruits\Mango.jpg"
                Case "$B$4"
                    imgPath = "C:\Users\Win10x64Test\Desktop\fruits\orange.jpg"
                Case "$B$5"
                    imgPath = "C:\Users\Win10x64Test\Desktop\fruits\strawberry.jpg"
                Case Else
                    imgPath = ""
            End Select
    
            If imgPath <> "" Then
                Set popUpPic = Me.Pictures.Insert(imgPath)
                With popUpPic
                    .Top = Target.Top
                    .Left = Target.Offset(0, 1).Left
                    .Height = 80
                    .Width = 80
                    .Placement = xlMoveAndSize
                End With
            End If
        End If
    End Sub
  • 這個代碼示例在用戶選擇範圍內的單元格時顯示圖像;類似的邏輯可以適應 Worksheet_BeforeDoubleClickWorksheet_BeforeRightClick 以觸發其他事件。

3. 關閉 VBA 編輯器並返回到 Excel。選擇指定範圍內的單元格以顯示彈出圖像。選擇其他單元格時,圖像將被隱藏。

如果遇到錯誤,請確保宏設置允許 VBA 代碼運行,並驗證圖像路徑是否正確。分發您的文件時,提醒用戶啟用宏以便此功能正常運行。


arrow blue right bubble 使用資料驗證輸入訊息顯示工具提示

如果您只需要在用戶將滑鼠懸停在單元格上時顯示基於文字的工具提示以提供更多資訊,您可以使用 Excel 內置的資料驗證輸入訊息功能。雖然此方法無法顯示圖像,但它提供了一種簡單且無需編程的方式來顯示描述、說明或警告作為彈出窗口。這對於表單、調查或教育模板等需要基本指導或上下文的情況非常有用。

如何設置:

  • 選擇您希望顯示工具提示的單元格或範圍。
  • 轉到 資料 標籤 > 資料驗證
  • 資料驗證 對話框中,轉到 輸入訊息 標籤。
  • 勾選 當單元格被選中時顯示輸入訊息。輸入標題和輸入訊息(最多 255 個字符)。
  • 點擊 確定。現在,當單元格被選中或滑鼠懸停時,您的自定義工具提示將出現。

限制:輸入訊息僅顯示文字(非圖像),並且當單元格不再被選中時訊息會消失。對於圖形彈出窗口,請參閱上述其他方法。

此方法廣泛兼容,不需要宏,並且可以根據需要輕鬆更新或刪除。如果您需要在許多數據輸入單元格中提供簡潔的文字提示或提醒,這是一種實用且高效的解決方案。

每種方法都有其優勢——註釋圖像便於添加少量單元格,VBA 最適合動態或大批量處理,超鏈接配合輔助宏允許互動式圖像更新,而資料驗證輸入訊息則非常適合基於文字的彈出窗口。選擇解決方案時,請仔細考慮工作表用戶的需求和平台兼容性。如果遇到常見問題,如圖像無法顯示、文字未更新或宏相關警告,請仔細檢查單元格範圍、宏權限和圖像文件路徑。對於增強功能或更多自動化工作流程,額外的 Excel 插件(如 Kutools for Excel)可以提供更精簡的解決方案。

最佳 Office 辦公效率工具

🤖 Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions
熱門功能查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入...
高級 LOOKUP多條件查找|多值查找|多表查找|模糊查找...
高級下拉列表快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ...
列管理器添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ...
精選功能網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)...
前15 大工具集12 款文本工具添加文本刪除特定字符,...)|50+ 種圖表 類型甘特圖,...)|40+ 實用 公式基於生日計算年齡,...)|19 款插入工具插入QR码按路徑插入圖片,...)|12 款轉換工具金額轉大寫匯率轉換,...)|7 款合併和分割工具高級合併行分割儲存格,...)| ...以及更多
使用 Kutools 支援你的語言——支援英語、西班牙語、德語、法語、中文及40 多種語言!

利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...


Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆

  • 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
  • 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
  • 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!