値が次のように定義されている単一のExcel列を分割するにはどうすればよいですか。
= HYPERLINK( "http://whatever.com"、 "Webサイトのタイトル")
2つの別々の列に分けられます。1つはタイトル( "Website Title")で、もう1つはURL( "http://whatever.com")です。
誰でも?
(これはExcel 2010用です)
値が次のように定義されている単一のExcel列を分割するにはどうすればよいですか。
= HYPERLINK( "http://whatever.com"、 "Webサイトのタイトル")
2つの別々の列に分けられます。1つはタイトル( "Website Title")で、もう1つはURL( "http://whatever.com")です。
誰でも?
(これはExcel 2010用です)
これは、VBAを使用する場合に機能します。
Option Explicit
Sub SplitHyperLinkFormula()
Dim r As Range
For Each r In Selection
If InStr(1, r.Formula, "=hyperlink", vbTextCompare) = 1 Then
r.Offset(0, 1).Value = GetHyperlink(r.Formula) 'Split URL
r.Offset(0, 2).Value = r.Value 'Split Title
End If
Next r
End Sub
Function GetHyperlink(s As String)
'Requires =HYPERLINK formula, assumes hyperlink has no commas.
s = Left(s, InStr(s, ",") - 2)
GetHyperlink = Right(s, Len(s) - 12)
End Function
分割する必要があるものを強調表示して、SplitHyperLinkFormulaを実行するだけです。セルの右側の2つのセルに必要な2つの値が配置されます。
警告:何らかの理由でハイパーリンクにカンマが含まれている場合、これはURLのカンマの前の部分のみを返します。
これは、VBAを使用しない代替手段です。
範囲を選択し、検索置換を使用して=記号を別のもの(#など)に変更します。これにより、数式が次のような文字列に置き換えられます
'#HYPERLINK( "http://whatever.com"、 "Webサイトのタイトル")'
区切り文字として「(二重引用符)」を使用して「テキストから列へ」を使用し、URLとWebサイトのタイトルを除くすべての列を破棄します。