チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル»Python»Spire.XLS for Python»リンク»Python:Excel ワークシートにハイパーリンクを挿入する方法
2025-05-09

Python:Excel ワークシートにハイパーリンクを挿入する方法

Excel のハイパーリンク機能は、スプレッドシート内にクリック可能なリンクを作成できる便利なツールです。ハイパーリンクを追加することで、別のシートやブック、Web サイト、あるいは同じブック内の特定のセルへ簡単に移動できます。外部リソースの参照や関連データの接続、インタラクティブなレポートの作成など、さまざまな目的で活用できます。

本記事では、Spire.XLS for Python を使用して、Excel ファイルにハイパーリンクを追加する方法をご紹介します。

Spire.XLS for Python のインストール

この操作には、Spire.XLS for Python と plum-dispatch v1.7.4 が必要です。これらは、Spire.XLS for Python の公式ウェブサイトから手動でダウンロードするか、以下の pip コマンドでインストールできます。

pip install Spire.XLS

Python で Excel にテキストハイパーリンクを追加する

テキストハイパーリンクは、クリックすることで Excel 内の特定の場所、外部リソース、またはメールアドレスへ移動できる文字列やフレーズです。以下の手順で、Spire.XLS for Python を使用して Excel にテキストハイパーリンクを追加する方法を解説します:

  • Workbook オブジェクトを作成します。
  • Workbook.Worksheets.get_Item() メソッドを使って目的のワークシートを取得します。
  • Worksheet.Range.get_Item() メソッドを使って、ハイパーリンクを挿入するセルを指定します。
  • Worksheet.HyperLinks.Add() メソッドでセルにハイパーリンクを追加します。
  • XlsHyperLink.TypeXlsHyperLink.TextToDisplayXlsHyperLink.Address プロパティを使って、リンクの種類、表示テキスト、リンク先を設定します。
  • Workbook.SaveToFile() メソッドでファイルを保存します。
  • Python
from spire.xls import *
from spire.xls.common import *

# Workbook オブジェクトを作成します
workbook = Workbook()

# 最初のワークシートを取得します
sheet = workbook.Worksheets.get_Item(0)

# Web ページへのテキストハイパーリンクを追加します
cell1 = sheet.Range.get_Item("B3")
urlLink = sheet.HyperLinks.Add(cell1)
urlLink.Type = HyperLinkType.Url
urlLink.TextToDisplay = "Web サイトへのリンク"
urlLink.Address = "https://www.e-iceblue.com/"

# メールアドレスへのテキストハイパーリンクを追加します
cell2 = sheet.Range.get_Item("E3")
mailLink = sheet.HyperLinks.Add(cell2)
mailLink.Type = HyperLinkType.Url
mailLink.TextToDisplay = "メールアドレスへのリンク"
mailLink.Address = "mailto:このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。"

# 外部ファイルへのテキストハイパーリンクを追加します
cell3 = sheet.Range.get_Item("B7")
fileLink = sheet.HyperLinks.Add(cell3)
fileLink.Type = HyperLinkType.File
fileLink.TextToDisplay = "外部ファイルへのリンク"
fileLink.Address = "C:\\Users\\Administrator\\Desktop\\Report.xlsx"

# 他のシートのセルへのテキストハイパーリンクを追加します
cell4 = sheet.Range.get_Item("E7")
linkToSheet = sheet.HyperLinks.Add(cell4)
linkToSheet.Type = HyperLinkType.Workbook
linkToSheet.TextToDisplay = "Sheet2 のセルへのリンク"
linkToSheet.Address = "Sheet2!B5"

# UNC アドレスへのテキストハイパーリンクを追加します
cell5 = sheet.Range.get_Item("B11")
uncLink = sheet.HyperLinks.Add(cell5)
uncLink.Type = HyperLinkType.Unc
uncLink.TextToDisplay = "UNC アドレスへのリンク"
uncLink.Address = "\\\\192.168.0.121"

# 列幅を自動調整します
sheet.AutoFitColumn(2)
sheet.AutoFitColumn(5)

# 結果のファイルを保存します
workbook.SaveToFile("output/テキストハイパーリンクの挿入.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

PythonでExcelワークシートのテキストにハイパーリンクを挿入する

Python で Excel に画像ハイパーリンクを追加する

画像ハイパーリンクは、テキストではなく画像をクリック可能なリンクとして使用する方法です。視覚的にわかりやすく、インターフェースに直感的なナビゲーションを加えることができます。以下の手順で、Spire.XLS for Python を使用して Excel に画像ハイパーリンクを追加する方法を解説します:

  • Workbook オブジェクトを作成します。
  • Workbook.Worksheets.get_Item() メソッドを使って目的のワークシートを取得します。
  • Worksheet.Pictures.Add() メソッドで画像をワークシートに挿入します。
  • XlsBitmapShape.SetHyperLink() メソッドを使って画像にハイパーリンクを設定します。
  • Workbook.SaveToFile() メソッドでファイルを保存します。
  • Python
from spire.xls import *
from spire.xls.common import *

# Workbook オブジェクトを作成します
workbook = Workbook()

# 最初のワークシートを取得します
sheet = workbook.Worksheets.get_Item(0)

# ワークシートにテキストを追加します
sheet.Range.get_Item("B2").Text = "画像のハイパーリンク"
# 2列目の列幅を設定します
sheet.Columns[1].ColumnWidth = 15

# ワークシートに画像を挿入します
picture = sheet.Pictures.Add(3, 2, "Logo.png")

# 画像にハイパーリンクを設定します
picture.SetHyperLink("https://www.e-iceblue.com", True)

# 結果のファイルを保存します
workbook.SaveToFile("output/画像ハイパーリンクの挿入.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

Spire.XLSを使用してExcelワークシートに画像へのハイパーリンクを挿入する

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Read 14 times