こんにちは。
作ってみました。
ワンライナーで書けるんですね。便利。
HTML
1 <div id="table"></div>
2 <script src="https://unpkg.com/xlsx@0.16.8/dist/xlsx.full.min.js"></script>
3 <script>
4 fetch('sample.xlsx')
5 .then(async r => document.getElementById('table').insertAdjacentHTML(
6 'afterbegin',
7 XLSX.utils.sheet_to_html(
8 XLSX.read(
9 await r.arrayBuffer(), { type: 'buffer' }
10 ).Sheets.Sheet1,
11 { header: '', footer: '' }
12 )
13 ));
14 </script>
コメントを受けて追記
ワンライナーはかっこいいけど読みにくいので、普通に書き直しました。
js
1 fetch('sample.xlsx')
2 .then(async r => {
3 const workbook = XLSX.read( await r.arrayBuffer(), { type: 'buffer' } );
4 const worksheet = workbook.Sheets.Sheet1;
5 worksheet['!ref'] = 'F4:T7'; // A1形式が使えます。
6 const table = XLSX.utils.sheet_to_html( worksheet, { header: '', footer: '' } );
7 document.getElementById('table').insertAdjacentHTML( 'afterbegin', table );
8 });