Sub LoadImage() Dim HLK As Hyperlink, Rng As Range For Each HLK In ActiveSheet.Hyperlinks '循環活動工作表中的各個超鏈接 If UCase(HLK.Address) Like "*.JPG" Or UCase(HLK.Address) Like "*.JPEG" Or UCase(HLK.Address) Like "*.PNG" Or UCase(HLK.Address) Like "*.GIF" Then '如果鏈接的位置是jpg或gif圖片(此處僅針對此兩種圖片類型,更多類型可以通過建立數組或字典或正則來判斷) Set Rng = HLK.Parent.Offset(, 0) '設定插入目標圖片的位置 With ActiveSheet.Pictures.Insert(HLK.Address) '插入鏈接地址中的圖片 If .Height / .Width > Rng.Height / Rng.Width Then '判斷圖片縱橫比與單元格縱橫比的比值以確定針對單元格縮放的比例 .Top = Rng.Top .Left = Rng.Left + (Rng.Width - .Width * Rng.Height / .Height) / 2 .Width = .Width * Rng.Height / .Height .Height = Rng.Height Else .Left = Rng.Left .Top = Rng.Top + (Rng.Height - .Height * Rng.Width / .Width) / 2 .Height = .Height * Rng.Width / .Width .Width = Rng.Width End If End With HLK.Parent.Value = "" '刪除單元格的圖片鏈接 End If Next End Sub