[잡설] 웹 서버에서 내보내는 엑셀 파일 및 데이터 이야기

작성자
dra****
작성일
2021-10-25 17:42
조회
111

현재 의도치 않게 Laravel(PHP Framework)을 공부하고 있습니다.
책도 없이 오직 유튜브로만 ... 3주 정도 됐습니다.

저런 프래임워크 만들어 낸 사람들 정말 존경 스럽습니다.
새로운 내용을 공부할 때마나 반성과 좌절과 쾌감과 ... 정말 만감이 교차합니다.

서론이 길었습니다. 서버쪽으로 좀 더 깊게 들어가니, 너무나도 많은 가능성이 있어 엑셀과 관련된 부분만 공유해보고자 합니다.

기본 전제는 데이터가 서버에 있다는 전제하에 기술합니다.

1. 서버쪽에 있는 Database에 데이터를 저장하면 엑셀에서 파워쿼리를 통해서 바로 접근이 가능합니다.
다만 접근하는 DB에 대한 암호가 유출이 되기 때문에 보안의 문제가 있습니다. 개인이 사용하거나, 자료 유출에 대한 위헙성이 없는 사업자한테 최고의 대안이 될 듯 합니다. 제가 이전에 포스팅한 MySQL 관련 내용이 이 부분입니다.

2. 보안이 신경 쓰이면, 서버쪽에서 API를 설정하고 로그인하면 인증 코드(일명, Token)를 받아 XmlHttp 객체를 이용하거나, QueryTable Object를 써서 서버에 Request하고 Response로 받아 엑셀에서 처리하는 방법이 있습니다.
QueryTable Object나 파워쿼리를 사용하면 Json으로 넘어오는 데이터 처리를 자동으로 해 줍니다.
이에 대해서 관심이 있으신 분들은 https://jsonplaceholder.typicode.com/ 방문에서 쿼리를 요청했을 때,
어떻게 json 파일로 리턴 되는가를 확인해보시면 됩니다. 이를 XmlHttp, QuertyTable, PowerQuery로 테스트 해보시면, 개념을 잡는데 도움이 됩니다.
이 부분을 이해 하셨다면 웹 API를 어떻게 사용하는지, 넘어오는 데이터를 어떻게 다루어야 하는지 알게 됩니다. 그럼 웹 크롤링은 그냥 껌이 됩니다.

3. 서버측에서 요청이 들어오면 쿼리에 따라 조건에 맞는 엑셀 파일이나 PDF 파일을 서버에서 생성하여 다운받게 할 수가 있습니다. 이 부분은 report나 어떤 특정 데이터를 빠르게 파일로 만들고자 할 때 아주 유용합니다.

4. 웹페이지에서 Dashboard를 구현하여 원하는 결과를 바로 웹 또는 핸드폰에서 조회 수정을 하게 할 수도 있습니다. 아래 그림은 제가 습작으로 웹에 구현해 본 것입니다.

5. 엑셀로 SEO관련 자동화 (사이트 상위 노출) 구현... 이 부분은 업자들의 악용의 소지가 있어 여기까지만.

저는 마소나 구글과 같은 거대 기업도 아니고, 그냥 공부하는 일개 개인에 불과합니다.
혼자서 그들 만큼 뭔가 대단한 것을 만들 수는 없지만, 공부를 하면 할수록 그들이 추구하는 바가 무엇이고, 어디를 향해 가고 있는지 조금 더 이해력(?)이 높아지는 듯 합니다.

엑셀 VBA가 어느 정도 단계가 넘어가시면 웹 서버관련 공부를 해보라 권하고 싶습니다.

전체 6

  • 2021-10-26 00:17

    기술이 점점 발전하면서 클라우드와 웹을 기반으로 많은 시스템이 통합되는 듯 합니다.

    웹기반 시스템을 구현할 때 가장 큰 문제가 보안과 처리속도인데, 보안은 요즘 워낙에 방법도 많고 다양하기에 거의 해결된 듯 하고

    앞으로는 사용자가 불편함을 느끼지 않을 정도의 범용성/처리속도가 남은 듯 합니다. 우리나라는 인터넷속도가 워낙 빨라 불편함이 없지만, 그렇지 않은 나라도 꽤 많죠.ㅎㅎ

    주변 지인 말로는 동접자가 많아질수록 백엔드 처리가 중요해져서, 요즘은 SQL 말고도 카산드라 같은 No SQL 언어(?)도 나름 핫하다고 합니다ㅎㅎ


    • 2021-10-26 00:41

      @더블유에이 님 개인적으로 학습하기 위해 저렴한 서버를 임대했는데, PHP와 MySQL만 지원합니다. 젠장...ㅠㅠ

      No SQL DB는 예전에도 많이 구현해서 잘 알고 있지만, 서버에서 지원을 안해서 포기. 어차피 웹 페이지로 넘어오면 Json이기 때문에 어떠한 DB를 사용하는지는 중요하지는 않은 듯 합니다. 다만 No SQL은 자유도가 높다는 점에서, 개발자 입장에서는 편합니다. 은행같이 대량의 DB를 써야 하는 곳은 어쩔수 없이 비싼 Oracle을 쓸 수 밖에 없는 입장.

      GoLang, Node Js, Nuxt, Next, React 모두 가상 머신 추가 비용 청구해서 포기. Heroku 서버도 비싸서 포기... ㅎㅎㅎ

      백엔드로 라라벨, 프론트 엔드로 Livewire, JetStream, Vue 등등 온갖 테스틀를 하고 있는 중입니다.

      궁극의 목적은 다른 사람들이 만든 라이브러리를 가져다 쓰는 것이 아니라 개인적으로 라이브러리를 만들어 쓰는 것입니다. 이러다 프레임워크를 하나 만들지도...

      동접자가 많았을 때 페이지 로딩을 줄이는 방법을 알면 좀 쉽게 갈 수도 있습니다. 그래서 나온 것이 Vue, Vite 등등....Wordpress나 KBoard 같은 플러그인들은 태생이 Heavy한데다 동적인 페이지 갱신이 아닌 전체 페이지 reload 방식이라 느릴 수 밖에 없다는 ...

      엑셀 게시판이라 다른 이야기를 쓰기도 좀 그래요... ㅠㅠ

      대학 졸업 후 20여년 넘게 못해 본 것들을 코로나 빌미 삼아 다양한 실험을 해보고 있습니다. 세상이 너무 빠르게 변했습니다.

      엑셀이란 관점만으로 볼 때, 웹서버에 데이가 있는 것이 훨씬 유용하고 매력적입니다. 이 것을 가지고 원격으로 할 수 있는 것들이 너무 많습니다.


      • 2021-10-27 04:24

        @dra**** 님 아마 워드프레스도 php 기반이라 ajax 로딩이 가능하지 않을까요?.. 워드프레스는 써보지 않아 잘 모르겠습니다 ㅎㅎ

        예전에 어디에서 봤는데 전세계 웹페이지의 절반 이상이 워드프레스로 만들어졌다고 하던데,

        아마 MS나 구글에서도 노코딩 개발 플랫폼에 심혈을 기울이는 이유가 이런 플랫폼시장을 우선 장악하기 위해서 그런게 아닐까 생각되기도 합니다 ㅎㅎ

        아직도 지원하는지 모르겠지만 GCP랑 AZURE 는 1년간 30만원정도를 무료로 지원해줘서 주변 지인들 임시 서버로도 쓰고 그랬는데.. 지금도 지원하는지는 잘 모르겠네요. 구글은 거의 무제한으로 계정 생성이 가능해서..ㅋㅋ 개발공부용으로 참 괜찮았던 기억이 있습니다


  • 2021-11-12 12:15

    어렵네요....


  • 2021-10-27 05:47

    배움엔 끝이 없는 것 같습니다


  • 2021-11-24 14:03

    오..지금 저한테 너무 유용한 글이었습니다. 잘 읽었습니다. 🙂


전체 48
번호 제목 작성자 작성일 추천 조회
23999
New [엑셀 VBA] Snippet - Public IP, Local IP, Mac Address 구하기 (4)
dra**** | 2021.11.25 | 추천 1 | 조회 32
dra**** 2021.11.25 1 32
23794
[엑셀 VBA] Snippet - 변수를 clipboard로 복사하기 (5)
dra**** | 2021.11.21 | 추천 2 | 조회 53
dra**** 2021.11.21 2 53
23337
HTML 라이브러리 사용하기 귀찮을 때, 사용하는 파싱함수 (getElementsByTag, getAttribute) (6)
트로피 오빠두엑셀 | 2021.11.09 | 추천 0 | 조회 70
트로피 오빠두엑셀 2021.11.09 0 70
23142
[잡설] 엑셀을 이용한 웹 자동화: SEO 이야기 (10)
dra**** | 2021.11.04 | 추천 0 | 조회 153
dra**** 2021.11.04 0 153
22802
[잡설] 웹 서버에서 내보내는 엑셀 파일 및 데이터 이야기 (6)
dra**** | 2021.10.25 | 추천 0 | 조회 111
dra**** 2021.10.25 0 111
22325
[엑셀 VBA] 파워쿼리 자동화 4. CRUD (3)
dra**** | 2021.10.12 | 추천 1 | 조회 149
dra**** 2021.10.12 1 149
22161
[엑셀 VBA] 파워쿼리 자동화 3. MySQL Class (8)
dra**** | 2021.10.07 | 추천 0 | 조회 169
dra**** 2021.10.07 0 169
21839
[엑셀 VBA] 파워쿼리 자동화 2. 자동화 실습 (8)
dra**** | 2021.09.28 | 추천 0 | 조회 224
dra**** 2021.09.28 0 224
21764
[엑셀 VBA] 개체 Reference - QueryTable Object 첨부파일 (2)
dra**** | 2021.09.26 | 추천 0 | 조회 95
dra**** 2021.09.26 0 95
21675
[엑셀 VBA] 파워쿼리 자동화 1. 자동화 순서 (8)
dra**** | 2021.09.23 | 추천 0 | 조회 392
dra**** 2021.09.23 0 392
21496
[엑셀 VBA] 개체 Reference - ADODB.Recordset : Database 필수 첨부파일 (4)
dra**** | 2021.09.16 | 추천 1 | 조회 189
dra**** 2021.09.16 1 189
21491
[잡설] IT가 흘러가고 있는 방향에 대한 단상 - 무엇을 공부해야 하는가? (21)
dra**** | 2021.09.16 | 추천 4 | 조회 218
dra**** 2021.09.16 4 218
21482
[엑셀 VBA] MySQL 02. Range -> 배열 -> INSERT (5)
dra**** | 2021.09.16 | 추천 0 | 조회 201
dra**** 2021.09.16 0 201
21412
[엑셀 VBA] MySQL 01. 워크시트 Custom Properties 활용하기 (4)
dra**** | 2021.09.14 | 추천 1 | 조회 112
dra**** 2021.09.14 1 112
20740
[엑셀 VBA] 개체 Reference - ListObject Object - [표]가지고 놀기 첨부파일 (12)
dra**** | 2021.08.29 | 추천 4 | 조회 218
dra**** 2021.08.29 4 218
20211
[엑셀 VBA] Windows API - winuser.h : 윈도우즈 프로그램의 핵심 첨부파일 (8)
dra**** | 2021.08.17 | 추천 3 | 조회 201
dra**** 2021.08.17 3 201
20194
[잡설] 엑셀이 웹으로 가야 하는 이유 (23)
dra**** | 2021.08.16 | 추천 12 | 조회 476
dra**** 2021.08.16 12 476
20153
[엑셀 VBA] 개체 Reference - FileSystem Object 첨부파일 (3)
dra**** | 2021.08.15 | 추천 1 | 조회 141
dra**** 2021.08.15 1 141
19717
[엑셀 VBA] 데이터 자동화 - 웹에서 제공하는 MySQL Sever를 이용한 자동화 개념 (15)
dra**** | 2021.08.05 | 추천 2 | 조회 342
dra**** 2021.08.05 2 342
19715
[엑셀 VBA] 개체 Reference - APPLICATION Object 첨부파일 (2)
dra**** | 2021.08.05 | 추천 0 | 조회 117
dra**** 2021.08.05 0 117