2025-02-10

엑셀 URL 인코딩(encode) 및 디코딩(decode) 함수 excel function [VBA]

엑셀 URL 인코딩(encode) 및 디코딩(decode) 함수 excel function [VBA]
출처: https://cocosoft.kr/442 [코코소프트:티스토리]

안녕하세요. 오늘은 엑셀의 URL 인코딩과 디코딩 함수에 대해서 알아보겠습니다.
( excel url encode decode )


엑셀2013 부터는
ENCODEURL 함수
가 포함되어있습니다.

하지만 따로 decode함수는 없습니다. 그래서 사용자정의함수 설정을 해주어야합니다.

사용자 정의함수를 사용하기 위해서 VBA 를 켜줍시다.
단축키

Alt
+
F11

를 누르거나, 아래와 같이 리본메뉴를 추가해주면 됩니다.

1. VBA 실행 후 모듈추가

Alt
+
F11

를 누르거나 개발도구탭을 통해서 VBA 편집기로 접속해줍니다.

해당 엑셀파일 문서에서 다음과 같이 모듈을 추가해줍니다.


아래와 같이 입력하면 됩니다.

ENCODEURL 함수와 DECODEURL 함수입니다.


Markup

Function ENCODEURL(varText As Variant, Optional blnEncode = True)
Static objHtmlfile As Object
If objHtmlfile Is Nothing Then
Set objHtmlfile = CreateObject("htmlfile")
With objHtmlfile.parentWindow
.execScript "function encode(s) {return encodeURIComponent(s)}", "jscript"
End With
End If
If blnEncode Then
ENCODEURL = objHtmlfile.parentWindow.encode(varText)
End If
End Function

Function DECODEURL(varText As Variant, Optional blnEncode = True)
Static objHtmlfile As Object
If objHtmlfile Is Nothing Then
Set objHtmlfile = CreateObject("htmlfile")
With objHtmlfile.parentWindow
.execScript "function decode(s) {return decodeURIComponent(s)}", "jscript"
End With
End If
If blnEncode Then
DECODEURL = objHtmlfile.parentWindow.decode(varText)
End If
End Function


2. 사용예


댓글 없음:

댓글 쓰기