Excelの各セルのURLを読み込んでURIデコードするサンプルコード(%で始まる謎の文字列を日本語にする)

記事内に広告が含まれています。

Excelの各セルのURLをループで読み込んでURIデコードをするサンプルを紹介します。

仕様

画面仕様

下記の通り表とボタンを用意しています。

ボタンを押下すると、「変換前」の列を読み込んでURIデコードをして、変換後の列に出力します。

ソースコード

Sub ボタン1_Click()
    Dim i As Long
    Dim cellValue As String
    Dim decodedURI As String
    
    'クリア処理
    Range(Range("B5"), Range("B" & Cells.Rows.Count)).ClearContents
    
    'ヘッダ行以降を処理させるため5行目を選択
    Cells(5, 1).Select
    
    Do
        'オフセットによる行移動
        cellValue = ActiveCell.Offset(i, 0).Value
        
        If Len(cellValue) = 0 Then
            '入力値がない場合終了
            Exit Do
        Else
            'URIDecode
            With CreateObject("ScriptControl")
              .Language = "JScript"
              decodedURI = .CodeObject.decodeURI(cellValue)
            End With
            ActiveCell.Offset(i, 1).Value = decodedURI
            
        End If
        
        i = i + 1
    
    Loop

End Sub

テスト実行

ボタンを押すとB列にURIデコードされた結果が出力されました。

大量のURLを処理するときは便利かもしれません。

参考情報

環境

下記の環境で作成・実行しております。

No.環境バージョン
1OSWindows10
2ExcelExcel2016
環境一覧

以上です。

コメント