티스토리 뷰

728x90
반응형

엑셀, xlwings lite로 진짜 날개를 달다.

 

✅ 엑셀 사용자의 한계, 파이썬 사용자의 갈증

엑셀은 여전히 수많은 기업 현장에서 사용되고 있는 강력한 도구입니다. 하지만 복잡한 데이터 분석이나 자동화, 웹 연동, 그리고 대용량 처리에서는 파이썬과 같은 범용 언어의 힘이 절실해지는 순간이 자주 있습니다.

반면 파이썬 사용자 입장에서도, 현실 업무에서 데이터를 입력하고 결과를 검토하는 매체로 엑셀을 벗어나기 어려운 상황이 많습니다. 이처럼 두 진영 사이에는 항상 '무언가 하나 빠진 듯한 불편함'이 존재해왔습니다.

 

 

 

엑셀 파이썬이라는 날개를 달다

파이썬을 알고 있는가? 파이썬 파이썬 최근 주변에서 얘기하는 것을 자주 접했을 것이다. 파이썬 무엇인가? 직장인에게는 내업 무를 자동으로 해줄 도구이며, 회사에게는 오류 없이 자동으로 처

eddm.tistory.com

 

🔗 xlwings 엑셀의 한계를 메워주다.

 

xlwings는 이러한 두 진영의 간극을 효과적으로 메워주는 도구입니다. 엑셀과 파이썬을 자유롭게 연결하여, 엑셀의 직관적인 인터페이스와 파이썬의 강력한 기능을 동시에 활용할 수 있게 해줍니다. 특히 xlwings는 엑셀 사용자들이 파이썬의 강력한 데이터 처리 능력을 활용하면서도, 익숙한 엑셀 환경에서 작업할 수 있게 해주어 업무 효율성을 크게 향상시켜주었습니다. 이는 그동안 파이썬의 힘을 갈망하던 많은 엑셀유저들의 갈증을 채워주고 희망을 줬습니다.

 

 

파이썬 설치해야하고, 엑셀보안 설정해야하고 하지만 한번만 세팅하면 너무 좋은 xlwings, 설치 이후에도 vba와 코드를 연결해야하는 벙거로움이 있는데요 이부분은 제가 조금 해결해드릴께요

 

 

자동화 엑셀 템플릿

📑 목차

www.eddmpython.com

 

 

 

 

🤝 MS 아나콘다와 협업하다! Python In Excel을 만들다

Microsoft는 아나콘다와의 협력을 통해 Excel 내에서 직접 Python을 실행할 수 있는 'Python in Excel' 기능을 개발했습니다. 이는 Excel 사용자들이 별도의 도구 없이도 Python의 강력한 데이터 분석 기능을 활용할 수 있게 되었다는 점에서 획기적인 발전입니다.

이 새로운 기능은 Excel 내에서 Python 코드를 직접 작성하고 실행할 수 있으며, pandas, matplotlib 등 주요 데이터 과학 라이브러리들을 즉시 사용할 수 있게 해줍니다. 이는 xlwings가 추구해온 Excel과 Python의 통합이라는 비전이 이제 Microsoft에 의해 공식적으로 인정받고 구현되었음을 의미합니다.

이러한 발전은 데이터 분석 분야에서 새로운 지평을 열어주며, Excel 사용자들에게 Python의 강력한 기능을 더욱 접근하기 쉽게 만들어주고 있습니다.

 

Python In Excel 도입초반에는 사용신청이 필요했으나 현재 MS365버전에서 별도 신청없이 사용가능합니다.

 

엑셀속파이썬 MS지원 Python in Excel 사전준비

엑셀속파이썬 MS지원 Python in Excel 사전준비 -MS365다운로드 부터 베타채널 등록 및 python in ex...

blog.naver.com

 

 

⚠️ Python in Excel의 한계와 도전 과제

그러나 Python in Excel에도 한계점이 존재합니다. 작동 방식이 다소 답답하고 제한적이며, 특히 보안상의 이유로 외부 데이터를 자유롭게 불러올 수 없다는 점은 큰 단점으로 작용합니다. 이러한 제약사항들은 Python in Excel의 성장과 활용도를 제한하는 중요한 요소가 되고 있습니다. 이러한 한계점들은 특히 실제 비즈니스 환경에서 더욱 두드러지게 나타나며, 사용자들이 Python의 진정한 잠재력을 완전히 활용하는 데 장애물이 되고 있습니다.

 

이에 대한 해결책으로 아나콘다는 'Anaconda Code'를 출시했습니다. 이 솔루션은 로컬 환경에서 Python 코드를 실행함으로써, 더 빠르고 안정적인 성능을 제공합니다. Anaconda Code의 주요 장점은 오프라인 작동 가능성과 실시간 데이터 처리 능력입니다. 하지만 Pyodide 웹어셈블리 기반 구조로 인한 일부 제약사항이 있어, 아나콘다는 지속적인 개선을 통해 이러한 기술적 한계를 극복하고자 노력하고 있습니다.

 

엑셀속파이썬 anaconda code로 Python In Excel의 문제점 해결 시도?

엑셀자동화,업무자동화 개발문의 010-2208-8513 일전에 Python In Excel 베타버전의 불편한 점, 초반 기...

blog.naver.com

 

 

 

🚀 xlwings Lite: 새로운 혁신을 이끌다

xlwings 팀은 이러한 제약사항들을 해결하기 위해 'xlwings Lite'라는 혁신적인 엑셀 확장 프로그램을 출시했습니다. Excel 2021 버전 이상에서 사용 가능한 이 솔루션은 Anaconda Code와 마찬가지로 Pyodide 기반으로 작동합니다.

xlwings Lite의 강점은 직관적인 사용성과 기존 파이썬 사용자들에게 친숙한 인터페이스에 있습니다. 특히 기존 xlwings 사용자들은 익숙한 모든 기능을 그대로 활용할 수 있습니다. 아직 완성도 측면에서 개선의 여지가 있지만, 함수(func)와 스크립트(script) 실행을 모두 지원한다는 점이 큰 장점입니다.

이는 Python in Excel과 Anaconda Code의 대안으로서, 사용자들에게 더욱 실용적이고 효과적인 도구가 될 것으로 기대됩니다.

 

 

 

 

 

 

xlwings Lite 설치방법

xlwings공식 홈페이지 및 소개 유튜브 참고하시기 바랍니다. 특별히 어려운부분은 없습니다. 추가기능으로 xlwings를 검색해서 설치 할 수 있습니다.

 

xlwings Lite documentation

Next Installation

lite.xlwings.org

 

 

 

 

🔍 xlwings Lite 기능 요약

  1. Office 스토어에서 무료 설치, 로그인 불필요
  2. Windows, macOS, 웹 Excel 모두 지원
  3. Python 설치 없이 브라우저에서 실행
  4. 코드가 통합 문서에 포함되어 배포 간편
  5. 사용자 정의 함수와 자동화 스크립트 실행 가능
  6. 시트 삽입, 셀 서식 등 Excel 제어 가능
  7. pandas 등 외부 패키지 사용 가능
  8. 웹 API에서 데이터 가져오기 가능
  9. 로컬 실행으로 빠른 성능
  10. 외부 전송 없이 로컬에서만 동작
  11. VS Code 스타일 편집기 제공
  12. 방화벽 내부 온프레미스 배포 가능
  13. 로딩 후 오프라인 사용 가능

 

Script 데코레이터 샘플

@script
def hello_world(book: xw.Book):
    sheet = book.sheets.active
    sheet["A1"].value = "Hello xlwings!"

위 예시처럼 @script 데코레이터를 함수 위에 추가하면 해당 함수를 Excel의 매크로처럼 실행할 수 있습니다.

  • Excel에서 Python 함수를 직접 호출할 수 있게 해줍니다.
  • 현재 활성화된 통합 문서와 시트에 쉽게 접근할 수 있습니다.
  • 매개변수를 받아 동적으로 Excel 작업을 수행할 수 있습니다.

스크립트 데코레이터를 사용하면 복잡한 Excel 자동화 작업을 Python으로 쉽게 구현할 수 있습니다.

 

 

 

 

 

func 데코레이터

@func 데코레이터는 Excel에서 Python 함수를 사용자 정의 함수(UDF)로 사용할 수 있게 해주는 기능입니다.

@func
def DOUBLE(x):
    return x * 2

위 예시처럼 @func 데코레이터를 사용하면 Excel 셀에서 직접 Python 함수를 호출할 수 있습니다.

  • Excel 셀에서 =DOUBLE(A1)과 같이 함수를 호출할 수 있습니다.
  • Excel의 기본 함수처럼 사용할 수 있어 편리합니다.
  • pandas, numpy 등 외부 라이브러리를 활용한 복잡한 계산도 가능합니다.

사용자 정의 함수를 통해 Excel의 기능을 Python으로 확장하여 더 강력한 데이터 처리와 분석이 가능해집니다.

 

 

 

 

 

다양한 파이썬 xlwings Lite 컨텐츠

xlwings Lite활용, 실습데이터 호출

내맘대로 함수로 셀범위 읽고 다시 리턴하기

엑셀에서 공시재무제표 데이터 분석시작

 

회계쟁이의 Pandas

파이썬 판다스?

www.eddmpython.com

 

728x90
반응형