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

如何在openpyxl中设置指定单元格的文本方向为从右到左?

解决openpyxl单元格阿拉伯文本从右到左显示问题

当然可以,通过openpyxl的Alignment类设置单元格的readingOrder属性即可实现从右到左的文本方向,具体操作如下:

  1. 导入openpyxl及样式模块openpyxl.styles.Alignment
  2. 创建或加载目标工作簿与工作表
  3. 为指定单元格设置readingOrder=2(1为默认从左到右,2代表从右到左)

示例代码

from openpyxl import Workbook
from openpyxl.styles import Alignment

# 创建工作簿并激活默认工作表
wb = Workbook()
ws = wb.active

# 写入带数字前缀的阿拉伯文本
target_cell = ws['A1']
target_cell.value = "1. مرحبا بالعالم"  # 示例内容:1. 你好世界

# 设置单元格为从右到左读取顺序
target_cell.alignment = Alignment(readingOrder=2)

# 保存工作簿
wb.save("arabic_text_example.xlsx")

批量设置示例

如果需要给整列或多个单元格统一设置从右到左方向,可通过循环实现:

# 为A列所有已使用单元格设置从右到左
for row in ws.iter_rows(min_col=1, max_col=1):
    for cell in row:
        cell.alignment = Alignment(readingOrder=2)

设置完成后,单元格内的阿拉伯文本会按照从右到左方向排版,数字前缀也会显示在正确位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 11:25:57