1

値が次のように定義されている単一のExcel列を分割するにはどうすればよいですか。

= HYPERLINK( "http://whatever.com"、 "Webサイトのタイトル")

2つの別々の列に分けられます。1つはタイトル( "Website Title")で、もう1つはURL( "http://whatever.com")です。

誰でも?

(これはExcel 2010用です)

4

2 に答える 2

1

これは、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のカンマの前の部分のみを返します。

于 2012-07-18T00:34:11.043 に答える
0

これは、VBAを使用しない代替手段です。

  1. 範囲を選択し、検索置換を使用して=記号を別のもの(#など)に変更します。これにより、数式が次のような文字列に置き換えられます

    '#HYPERLINK( "http://whatever.com"、 "Webサイトのタイトル")'

  2. 区切り文字として「(二重引用符)」を使用して「テキストから列へ」を使用し、URLとWebサイトのタイトルを除くすべての列を破棄します。

于 2012-10-01T14:59:57.660 に答える