본문으로 바로가기

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

로딩중..
2017.06.13 23:16

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

( excel url encode decode )


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


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



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


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


1. VBA 실행 후 모듈추가

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


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



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

ENCODEURL 함수DECODEURL 함수입니다.



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. 사용예


댓글을 달아 주세요

  1. 진상우 2017.07.08 23:17 신고

    아 한가지 물어봐도 될까요? 본문과 전혀 상관없는 글인데요..
    저랑 어떤분이랑 국방과 정치에 관련해서 잠시 이야기를 주고 받았는데
    그분이 저보고 자꾸 빨갱이,좌좀이라하더라구요?
    그리고 그분이 일베를 하시는지 글을 캡쳐해서
    좌좀빨갱이 클라스 라는 제목으로 글을 올렸습니다
    제 닉네임이 들어가서 일베분들이 저한테 덧글로 욕을해서
    그본문이랑 관련된글을 모두 지웠습니다
    일베 작성자도 캡쳐글을 지운상태구요
    문제는
    제가 해서는 안되지만 너무 분해서 일베 사이트의 작성자 닉네임을 기억해서 그 사람이 다는 덧글들에
    욕을 하고 패드립을 쳤습니다..
    2개 정도 쳤는데 그사람이 고소를 한다 하시더라구요..
    일베 사이트에서 닉네임은 지정하지 않았지만 그사람이 쓴덧글에 덧글로 욕설과 패드립을
    하였는데 고소죄가 성립하려나요?......
    99년생 현재 고3 미성년잔데 형량 살게되나요?......
    본인 생각과 다르다고 빨갱이로 매도해서 잠시 너무 화가났습니다 ㅠㅠ
    반성하고 있습니다

티스토리 툴바