ハイパーリンクされた画像からのURLの抽出(Microsoft Excel)
インターネットのデータをExcelワークシートで使用する1つの方法は、Webページからデータをコピーして、ワークシートに貼り付けることです。たとえば、Webページ上のデータのテーブルを選択し、Ctrl + Cを押してクリップボードにコピーし、Excelでセルを選択してから、Ctrl + Vを押すことができます。 Excelは、元のテーブルと同じように、データを解析して適切なセルに配置するために最善を尽くします。
問題は、多くの場合、テーブルデータ以上のものを取得することです。 Webからコピーしたデータに他のオブジェクトがあった場合、それらのオブジェクトもワークシートに貼り付けられます。ワークシートにあらゆる種類の小さなグラフィックが表示されることは珍しくありません。これらのグラフィックが元々ハイパーリンクであった場合は、実際にハイパーリンクを抽出してからグラフィックを削除することをお勧めします。これにより、ワークシートのデータがはるかに使いやすくなります。
これを行う方法は、マクロを使用することです。 Web情報をワークシートに貼り付けたら、次のマクロを実行します。
Sub ConvertHLShapes() Dim shp As Shape Dim sTemp As String For Each shp In ActiveSheet.Shapes sTemp = "" On Error Resume Next 'go to next shape if no hyperlink sTemp = shp.Hyperlink.Address On Error GoTo 0 If sTemp <> "" Then shp.TopLeftCell.Value = sTemp shp.Delete End If Next End Sub
このマクロは、ワークシートの各形状をステップスルーします。次に、図形にハイパーリンクが関連付けられているかどうかを確認します。含まれている場合、そのハイパーリンクのアドレス(sTemp変数内)は、図形が配置されている場所の左上隅のセルに配置されます。マクロは、ハイパーリンクを持つすべての図形を削除します。 shp.Delete行をIf … End If構造体の外側に移動するだけで、ワークシート内のすべての図形を強制的に削除できます。
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(2907)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。