1
0
セルを結合するサンプルです。

結合前

image.png

結合後

image.png

プログラム

merge_cells_basic.py
#! /usr/bin/python
# ---------------------------------------------------------------
#	merge_cells_basic.py
#
#					Jun/14/2024
# ---------------------------------------------------------------
import sys
import openpyxl
from openpyxl.styles import Alignment

# ---------------------------------------------------------------
def align_adjust_proc(row):
	ws.cell(row, 1).alignment = Alignment(horizontal='center',vertical='center')
	ws.cell(row, 2).alignment = Alignment(horizontal='center',vertical='center')
# ---------------------------------------------------------------
xlsx_in=sys.argv[1]
#
wb = openpyxl.load_workbook(filename=xlsx_in)
ws = wb.worksheets[0]
#
ws.merge_cells(start_row=1,start_column=1, end_row=4, end_column=1)
ws.merge_cells(start_row=1,start_column=2, end_row=4, end_column=2)
align_adjust_proc(1)
#
ws.merge_cells(start_row=5,start_column=1, end_row=8, end_column=1)
ws.merge_cells(start_row=5,start_column=2, end_row=8, end_column=2)
align_adjust_proc(5)
#
ws.merge_cells(start_row=9,start_column=1, end_row=12, end_column=1)
ws.merge_cells(start_row=9,start_column=2, end_row=12, end_column=2)
align_adjust_proc(9)
#
for it in range(6):
	jt = it * 2 + 1
	pos = 'C%d:C%d' % (jt,jt+1) 
	ws.merge_cells(pos)
	ws.cell(jt, 3).alignment = Alignment(horizontal='center',vertical='center')
#
wb.save(xlsx_in)
# ---------------------------------------------------------------

実行方法

./merge_cells_basic.py ex01.xlsx
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0