JavaScript로 Excel을 임베딩하는 방법

회원들이 게시글에 임베디드 엑셀 스프레드시트를 추가할 수 있도록 하고 싶습니다. 이는 자바스크립트를 통해 가능할 수 있으며, 예를 들어 다음과 같습니다:

<div id="myExcelDiv" style="width: 402px; height: 346px"></div>
<script type="text/javascript" src="https://onedrive.live.com/embed?resid=6C685993F809A9F8%212757&authkey=%21AABR6KgqMF_ImYs&em=3&wdDivId=%22myExcelDiv%22&wdDownloadButton=1&wdAllowInteractivity=0&wdAllowTyping=1"></script>

하지만 - 이해할 수 있는 대로 - 게시글에서 이러한 내용은 제거됩니다. 이러한 것을 가능하게 하는 접근 방식이 있을까요?

수정 예를 들어 https://onedrivelive.com/embed 또는 해당 도메인에서만 자바스크립트를 허용하는 해결책에 대해 보너스 점수를 드립니다.

바보 같은 질문이지만… 왜 그런가요? 사람들이 원하는 소프트웨어를 자유롭게 사용하게 두고 싶은 이유가 뭔가요?

402x345px 크기의 엑셀 시트가 툴바 등을 모두 포함해 디스코urs 주제 안에 제공되고, 저는 모바일을 사용 중인 상황을 떠올려 봅니다. 그건… 꽤 사용하기가 어렵습니다.

그래서 핵심 질문은 이것이죠: 여러분이 달성하려는 목표가 무엇인가요? 그것이 최적의 솔루션, 즉 임베딩인지 다른 방식인지를 결정하기 때문입니다.

감사합니다. 완벽하지 않다는 점을 이해하고 있습니다. 저는 사람들이 제 포럼에서 Excel을 “말하다”(익숙하게 다루다)는 느낌을 받기를 바랍니다. 스프레드시트는 코드도 아니고, 스크린샷으로 캡처하기에도 부적합한 형식입니다.

Excel에서 특정 작업이 어떻게 수행되는지에 대한 설명을 이해하려면, 동시에 시트를 살펴봐야 합니다.

해당 크기는 단순히 예시 코드에서 가져온 것일 뿐, 반드시 그렇게 해야 한다는 것은 아닙니다.

모든 툴바를 표시할 수는 없으며, 실제로는 수식 입력줄(Formula Bar)은 유지하고 싶습니다. 하지만 이것은 불가능합니다(이렇게 할 수 있는 옵션이 없기 때문입니다).

모바일에서 이를 잘 구현하는 것은 도전 과제가 될 것입니다. 하지만 솔직히 말하면 스프레드시트와 모바일은 궁합이 잘 맞지 않습니다(다만, 스프레드시트에 대한 논의는 가능해야 합니다).

이렇게 설명하면 조금이나마 명확해지나요?

참고로, 다음 말씀이 정확히 무슨 의미인지 잘 이해가 가지 않습니다.

추가된 bbcode를 가진 your could message s 테마 컴포넌트에서 해당 URL이 올바른 출처에서 온지 확인하도록 할 수 있습니다.

Table builder Customization > Theme component 을 살펴보면, Excel과 유사한 기능을 추가하는 것에 대한 논의가 있습니다. 하지만 고급 기능을 사용하려면 유료 버전이 필요한 것 같습니다.

아래는 해당 논의의 시작 부분이라고 생각합니다.

https://meta.discourse.org/t/table-builder/236016/94?u=heliosurge

네, 맞습니다. 그 게시글은 제가 쓴 것입니다.

두 가지 모두 서로 다른 사용 사례에서 흥미롭다고 생각합니다.

기본 에디터 플러그인(다시 동작하도록 포크한 것)을 사용 중인데, 이 플러그인과 함께 작동할 수 있는 해결책을 찾으면 좋겠습니다.

아마도 회원들이 공개용 OneDrive URL을 게시하면, 제가 자동으로 해당 URL을 JavaScript로 교체할 수 있을 것 같습니다.

이것이 일반적인 방법인가요? (게시물 후처리)

더 읽어보니, 이는 조리 후 처리 과정에 수정(추가)을 통해 구현할 수 있을 것 같습니다.

@naveedahmada036 님이 만든 (9년 전) 플러그인을 발견했는데, 이 플러그인은 Google Sheets에 대해 비슷한 일을 수행합니다:

직접 사용해 봤는데, 거의 작동합니다(Google Docs URL을 화이트리스트에 추가해야 합니다). 수정: 화이트리스트 옵션을 시도해 봤지만 여전히 제대로 작동하지 않습니다.

이 플러그인은 iframe을 사용하며(Discourse에서 잘 지원됨), 제 경우에는 해결책이 될 수 있지만, JavaScript를 사용하는 것이 더 나을 것 같습니다.

이 플러그인은 제 WYSIWYG 플러그인의 기본 편집기까지 깨뜨렸는데, 왜 그런지 궁금합니다.

수정 2: 이 플러그인은 실제로는 Daniel Fernández 님이 만든 것이며, @Daniel_Fernandez_Pes 님이 만든 것으로 추정됩니다.