共有ワークブック(Microsoft Excel)でのハイパーリンクへの変換
エリックは、約3,500レコードのデータベースを含む共有ワークブックを持っています。各レコードの2つのセルには、電子メールアドレスとURLが含まれています。新しいレコードがデータベースに追加されると、電子メールアドレスとURLはハイパーリンクではなく通常のテキストとして表示されます。それらをハイパーリンクにするには、Ericはブックの共有を解除し、変更を加えてから、ブックを再共有する必要があります。エリックは、おそらく、この状況を処理するためのより簡単な方法があるかどうか疑問に思いました。
簡単に言うと、共有ブックを使用する場合、ハイパーリンクの追加と編集は許可されていません。これを回避する最も簡単な方法は、リンクをテキストとして別々のセルに配置し、HYPERLINK数式を使用してそれらのセルを参照することです。
たとえば、URLがセルE2に入力されている場合、別のセルで次の数式を使用できます。
=HYPERLINK(E2, E2)
この数式の最初の引数はアドレスを含むセルに対するものであり、2番目の引数はハイパーリンクに表示されるテキストに対するものです。このアプローチでは、(HYPERLINK式の場合)2つの追加の列が必要ですが、ブックの共有解除と再共有は必要ありません。
他の唯一のオプションは、ブックの共有解除と再共有のプロセスを自動化できるマクロを作成することです。次のマクロはこれを実行し、選択したセルにあるものをすべてハイパーリンクに変換します。
Sub AddHyperlink() Dim cell As Range Application.DisplayAlerts = False ' Unshare the Workbook If ActiveWorkbook.MultiUserEditing Then ActiveWorkbook.ExclusiveAccess End If ' Change address in cell to a hyperlink. If ActiveCell = "" Then ActiveCell.Hyperlinks.Delete Else For Each cell In Intersect(Selection, _ Selection.SpecialCells(xlConstants, xlTextValues)) With Worksheets(1) .Hyperlinks.Add Anchor:=cell, _ Address:=cell.Value, _ ScreenTip:=cell.Value, _ TextToDisplay:=cell.Value End With Next cell End If ' Reshare the Workbook If Not ActiveWorkbook.MultiUserEditing Then ActiveWorkbook.SaveAs _ Filename:=ActiveWorkbook.FullName, _ AccessMode:=xlShared End If End Sub
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(3155)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。