A1に文字列「SONY」 ハイパーリンクの挿入で文字列SONY、アドレスhttp://www.sony.co.jp
B1に=hyperlink("http://www.sony.co.jp","sony")
と入っているとします。B1の形式を全てA1の形式に変換したいと思っていますがどのようにやればよいかわかりません。
Hyperlink関数を使った方がいろんな面で便利とは知っているのですが、B1のhyperlink関数からA1のハイパーリンク挿入への変換を教えていただきたく思います。B列には数百社のhyperlink関数で定義された企業名があるのですが、それをAの形式に手動でなおすには時間が恐ろしくかかってしまいます。よろしくお願いいたします。
VBAで作ってみました。
実行すると、B列のHYPERLINK関数の形式から、A列にハイパーリンクを追加します。
Sub ChangeHyperlinks() Dim r As Long Dim m As Long Dim t As String Dim url As String m = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Rows.Count - 1 For r = 1 To m t = Trim$(Cells(r, 2).Formula) If Left$(t, 10) = "=HYPERLINK" Then t = Left$(t, Len(t) - 2) ' 右端の ") を削除 t = Right$(t, Len(t) - 12) ' 左端の =HYPERLINK(" を削除 url = Left$(t, InStr(t, """") - 1) ' URL切出し Cells(r, 1).Value = _ Right$(t, Len(t) - Len(url) - 3) ' 別名を切出し、A列にセット ActiveSheet.Hyperlinks.Add _ Cells(r, 1), url ' リンク追加 End If Next r End Sub
URLはダミー
コメント(0件)