目录。
1、读取合并单元格。
2、判断单元格是否为合并单元格。
3、确定合并区域左上角单元格的位置。
4、写入合并单元格。
3、复制粘贴合并的单元格。
4、Python解散合并单元格。
5、单元格合并python。
excel示例文件,合并单元格之一:
用脚本依次读A1、A2、B1、B2单元格发现只读A1只能读取合并单元格的内容。
总之合并区,只有左上角的单元格才能读取合并区的内容。
import win32com.client as clientfrom win32com.client import constantsimport osxls_app = client.gencache.EnsureDispatch('Excel.Application')#打开Excel应用程序xls_app.Visible =1#设置应用程序可见curr_path = os.getcwd()wb = xls_app.Workbooks.Open(r'%s\合并单元格示例.xlsx'%curr_path)#sht = wb.Worksheets(1)# 指向第一个sheet页面# 读取合并的单元格txt_a1 = sht.Range('A1')txt_b1 = sht.Range('B1')txt_a2 = sht.Range('A2')txt_b2 = sht.Range('B2')print(txt_a1)print(txt_a2)print(txt_b1)print(txt_b2)。
输出:
我在这里NoneNoneNone。
我在这里NoneNoneNone。
2、判断单元格是否为合并单元格。
使用Range.Mergecels判断单元格是否为合并区域内的单元格。
print('A1:',sht.Range('A1').MergeCells)print('B1:',sht.Range('B1').MergeCells)print('A2:',sht.Range('A2').MergeCells)print('B2:',sht.Range('B2').MergeCells)print('A3:',sht.Range('A3').MergeCells)。
输出:
你可以看到合并区域内的单元格。
3、判断合并区左上角单元格的位置。
访问合并区域内的任何单元格,然后调用Range.MergeArea,Range可以得到整个合并区域c;然后使用cells(1,1)指向区域左上角的cell,可以获得合并区域的内容。
print(sht.Range('B1').MergeArea.Cells(1,1).Text)。
cell = sht.Range('B1').MergeArea.Cells(1,1)print(cell.Row)print(cell.Column)。
4、写入合并单元格。
sht.Range('A1').Value = '新内容' #可修改sht.Range('B1').Value = '新内容' # 不会修改合并单元格内容!!!
3、复制粘贴合并的单元格。
复制合并单元格,合并区域的整体必须复制c;复制成功。
运行效果
4、Python解散合并单元格。
merge_rng = sht.Range('C1').MergeArea #找到新粘贴的合并区域merge_rng.UnMerge() #单元格解散合并。
解散后,只有C1区,并且合并的内容将保留在C1单元格中。 。
5、单元格合并python。
合并C1-E2之间的矩形区域。