ホームページ > ウェブフロントエンド > htmlチュートリアル > HTMLをエクセルに転送する方法

HTMLをエクセルに転送する方法

PHPz
リリース: 2024-02-21 22:48:04
オリジナル
636 人が閲覧しました

HTMLをエクセルに転送する方法

HTML を Excel に転送する方法には具体的なコード例が必要です

はじめに:
実際の作業では、Web ページのデータを Excel としてエクスポートする必要がある場合があります。フォーマット。 HTML は一般的な Web マークアップ言語、Excel は一般的に使用される表計算ソフトウェアですが、両者は形式が異なるため、変換が必要です。この記事では、JavaScript とサードパーティ ライブラリを使用して、HTML を Excel ファイルに転送する機能を実現する方法と、具体的なコード例を紹介します。

1. JavaScript を使用して HTML を Excel に転送する

  1. HTML テーブルを作成する
    まず、HTML でテーブルを作成し、エクスポートする必要があるデータを配置する必要があります。表の中に入れます。たとえば、次の表は 3 行 3 列です。
<table id="myTable">
  <tr>
    <th>姓名</th>
    <th>年龄</th>
    <th>性别</th>
  </tr>
  <tr>
    <td>张三</td>
    <td>25</td>
    <td>男</td>
  </tr>
  <tr>
    <td>李四</td>
    <td>30</td>
    <td>女</td>
  </tr>
</table>
ログイン後にコピー
  1. エクスポート ボタンとイベント リスナーの追加
    ボタンが押されたときにエクスポート イベントをトリガーするボタンを HTML に追加します。をクリックします。ボタンは次のように追加できます:
<button onclick="exportToExcel()">导出Excel</button>
ログイン後にコピー
ログイン後にコピー

次に、エクスポート関数をトリガーするためにボタンのイベント リスナーを追加する必要があります。 JavaScript を使用して次のコードを記述します。

function exportToExcel() {
  // 导出表格逻辑
}
ログイン後にコピー
  1. エクスポート ロジックを実装して Excel ファイルを生成する
    エクスポート ロジックを実装するには、JavaScript を使用して HTML テーブルのコンテンツをエクセルファイル。エクスポートされた関数では、次の手順を実行する必要があります:

(1) 新しい Excel ワークブックを作成します:

var wb = new ExcelJS.Workbook();
var ws = wb.addWorksheet('Sheet 1');
ログイン後にコピー

(2) HTML テーブルと列のすべての行を走査します。 Excel ワークシートにデータを入力します。

var rows = document.getElementById("myTable").rows;
for (var i = 0; i < rows.length; i++) {
  var cells = rows[i].cells;
  for (var j = 0; j < cells.length; j++) {
    ws.getCell(i + 1, j + 1).value = cells[j].innerText;
    // 根据需要设置单元格样式
    ws.getCell(i + 1, j + 1).alignment = { horizontal: 'left' };
  }
}
ログイン後にコピー

(3) Excel ファイルを保存します。

wb.xlsx.writeBuffer().then(function(buffer) {
  saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'data.xlsx');
});
ログイン後にコピー

これらのコードを「exportToExcel」関数に追加します。完全なコードは次のとおりです。

function exportToExcel() {
  var wb = new ExcelJS.Workbook();
  var ws = wb.addWorksheet('Sheet 1');

  var rows = document.getElementById("myTable").rows;
  for (var i = 0; i < rows.length; i++) {
    var cells = rows[i].cells;
    for (var j = 0; j < cells.length; j++) {
      ws.getCell(i + 1, j + 1).value = cells[j].innerText;
      ws.getCell(i + 1, j + 1).alignment = { horizontal: 'left' };
    }
  }

  wb.xlsx.writeBuffer().then(function(buffer) {
    saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'data.xlsx');
  });
}
ログイン後にコピー

2. サードパーティ ライブラリを使用して HTML を Excel に転送する
JavaScript のネイティブ操作に加えて、サードパーティ ライブラリを使用して、HTML を Excel に転送する機能を実現することもできます。 AlaSQL」ライブラリ。以下は、AlaSQL ライブラリを使用するための具体的なコードです。

  1. AlaSQL ライブラリと ExcelJS ライブラリの紹介
    まず、HTML で AlaSQL ライブラリと ExcelJS ライブラリ スクリプトを導入する必要があります。
<script src="https://cdn.jsdelivr.net/npm/alasql"></script>
<script src="https://cdn.jsdelivr.net/npm/exceljs"></script>
ログイン後にコピー
  1. エクスポート関数を変更する
    エクスポート関数では、AlaSQL ライブラリの「alasql」メソッドを使用して、HTML テーブルを Excel に変換します。ファイル。エクスポートされた関数のコードを次のように変更します:
function exportToExcel() {
  var tableData = [];
  var rows = document.getElementById("myTable").rows;
  for (var i = 0; i < rows.length; i++) {
    var rowData = [];
    var cells = rows[i].cells;
    for (var j = 0; j < cells.length; j++) {
      rowData.push(cells[j].innerText);
    }
    tableData.push(rowData);
  }

  var opts = {
    sheetid: 'Sheet 1',
    headers: true,
    skipHeader: true
  };

  var res = alasql('SELECT * INTO XLSX("data.xlsx",?) FROM ?', [opts, [tableData]]);
}
ログイン後にコピー
  1. ボタンとイベント リスナーを追加します
    同様に、HTML にボタンとイベント リスナーを追加します:
<button onclick="exportToExcel()">导出Excel</button>
ログイン後にコピー
ログイン後にコピー

完全な HTML ファイルのサンプル コードは次のとおりです:



  
    
    HTML转存为Excel
    
    
  
姓名 年龄 性别
张三 25
李四 30
<button onclick="exportToExcel()">导出Excel</button> <script> function exportToExcel() { var tableData = []; var rows = document.getElementById("myTable").rows; for (var i = 0; i < rows.length; i++) { var rowData = []; var cells = rows[i].cells; for (var j = 0; j < cells.length; j++) { rowData.push(cells[j].innerText); } tableData.push(rowData); } var opts = { sheetid: 'Sheet 1', headers: true, skipHeader: true }; var res = alasql('SELECT * INTO XLSX("data.xlsx",?) FROM ?', [opts, [tableData]]); } </script>
ログイン後にコピー

概要:
この記事では、JavaScript とサードパーティのライブラリを使用して HTML を Excel ファイルに転送する方法を紹介し、具体的なコード例を示します。これらのコードを使用すると、Web ページ上のデータを Excel 形式に簡単に転送して、実際の業務でのエクスポートのニーズを満たすことができます。この記事が皆さんのお役に立てば幸いです。

以上がHTMLをエクセルに転送する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート