You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在React中创建工作表列顺序为从右到左的Excel文件

实现Excel工作表从右到左排列的方案

你当前使用的SheetJS(xlsx)库已经原生支持该配置,仅需给工作表对象添加!rtl: true属性即可生效,修改后的完整代码如下:

import React from 'react'
import * as FileSaver from "file-saver";
import * as XLSX from "xlsx";

export const ExportToExcel = ({ apiData, fileName }) => {
  const fileType =
    "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8";
  const fileExtension = ".xlsx";

  const exportToXL = (apiData, fileName) => {
    const ws = XLSX.utils.json_to_sheet(apiData);
    // 开启当前工作表从右到左排列
    ws['!rtl'] = true;
    const wb = { Sheets: { data: ws, data2: ws }, SheetNames: ["data", "data2"] };
    const excelBuffer = XLSX.write(wb, { bookType: "xlsx", type: "array" });
    const data = new Blob([excelBuffer], { type: fileType });
    FileSaver.saveAs(data, fileName + fileExtension);
  };

  return (
    <button onClick={(e) => exportToXL(apiData, fileName)}>导出</button>
  );
};

配置说明

  • 只需要新增ws['!rtl'] = true一行代码即可完成配置,导出的file.xlsx打开后对应工作表会默认按从右到左的顺序展示列,滚动条也会自动适配到左侧。
  • 如果你需要给不同工作表设置不同的排版方向,单独生成对应工作表实例,分别设置!rtl属性即可。

内容的提问来源于stack exchange,提问作者Mulli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 04:00:03