#练习:
#封装一个ExcelUtil的模块(构造函数是excel的路径),里面提供封装的方法:
#1 获取某个sheet对象
#2 打印所有sheet名称
#3 给某个sheet的某个单元格写入内容
#4 从某个sheet的某个单元读出入内容
#5 保存对excel对象的修改
#6 读取某一行的内容
#7 读取某一列的内容 from openpyxl import Workbook
from openpyxl import load_workbook class ExcelUtil():
def __init__(self,path):
self.path=path
self.wb=load_workbook(path)
self.ws=self.wb.active #1 获取某个sheet对象
def get_Excel_sheet(self,sheet_name):
self.ws=self.wb[sheet_name] #2 打印所有sheet名称
def get_all_sheet(self):
return self.wb.sheetnames #3 给某个sheet的某个单元格写入内容
def write_sheet(self,row1,column1,value1):
self.ws.cell(row=row1,column=column1,value=value1) #4 从某个sheet的某个单元读出内容
def read_sheet(self,row1,column1):
return self.ws.cell(row=row1,column=column1).value #5 保存对excel对象的修改
def save_sheet(self):
self.wb.save(self.path) #6 读取某一行的内容
def read_row_sheet(self,row_no):
rows=[]
for row in self.ws.iter_rows():
rows.append(row)
row_content =[]
for cell in rows[row_no-1]:
row_content.append(cell.value)
return row_content #for cell in rows[row_no-1]:
#row_content.append(cell.value)
#return row_content #7 读取某一列的内容
def read_column_sheet(self,col_no):
cols=[]
for col in self.ws.iter_cols():
cols.append(col)
col_content =[]
for cell in cols[col_no-1]:
col_content.append(cell.value)
return col_content if __name__=="__main__":
Excel_obj=ExcelUtil("e:\\test4\\s2.xlsx") Excel_obj.get_Excel_sheet("wangjing") print Excel_obj.get_all_sheet() Excel_obj.write_sheet(2,3,"") print Excel_obj.read_sheet(2,3) Excel_obj.save_sheet() print Excel_obj.read_row_sheet(2) print Excel_obj.read_column_sheet(2) #练习:
from openpyxl import load_workbook
from openpyxl import Workbook
from openpyxl.worksheet.table import Table, TableStyleInfo wb = Workbook()
ws = wb.active data = [
['Apples', 10000, 5000, 8000, 6000],
['Pears', 2000, 3000, 4000, 5000],
['Bananas', 6000, 6000, 6500, 6000],
['Oranges', 500, 300, 200, 700],
] ws.append(["Fruit", "", "", "", ""])
for row in data:
ws.append(row) tab = Table(displayName="Table1", ref="A1:E5") style = TableStyleInfo(name="TableStyleMedium9", showFirstColumn=False,
showLastColumn=False, showRowStripes=False, showColumnStripes=True)
tab.tableStyleInfo = style
ws.add_table(tab) wb.save('e:\\test4\\s2.xlsx') #练习:自定义字体颜色
from openpyxl import Workbook
from openpyxl.styles import colors
from openpyxl.styles import Font wb = Workbook()
ws = wb.active a1 = ws['A1']
d4 = ws['D4']
ft = Font(color=colors.GREEN) # color="FFBB11",颜色编码也可以设定颜色
a1.font = ft
d4.font = ft a1.font = Font(color=colors.BLUE, italic=True)
a1.value = "abc" wb.save('e:\\test4\\s2.xlsx') #练习:设置某个单元格字体
from openpyxl import Workbook
from openpyxl.styles import colors
from openpyxl.styles import Font
from copy import copy wb = Workbook()
ws = wb.active a1 = ws['A1']
d4 = ws['D4']
a1.value = "abc" ft1 = Font(name=u'宋体', size=14)
ft2 = copy(ft1) #复制字体对象
ft2.name = "Tahoma" print ft1.name print ft2.name print ft2.size wb.save('e:\\test4\\s2.xlsx') #练习
from openpyxl import Workbook
from openpyxl.styles import Font
wb = Workbook()
ws = wb.active col = ws.column_dimensions['A']
col.font = Font(bold=True) #将A列设定为粗体
ws["A1"]=""
row = ws.row_dimensions[1]
row.font = Font(underline="single") #将第一行设定为下划线格式 # Save the file
wb.save('e:\\test4\\s2.xlsx') #练习:设置单元格背景色
from openpyxl import Workbook
from openpyxl.styles import Font
from openpyxl.styles import NamedStyle, Font, Border, Side,PatternFill wb = Workbook()
ws = wb.active highlight = NamedStyle(name="highlight")
highlight.font = Font(bold=True, size=20,color= "ff8888") #设置字体颜色
highlight.fill = PatternFill("solid", fgColor="eeE100") #设置背景色
bd = Side(style='thin', color="") #设置边框thin是细,thick是粗
highlight.border = Border(left=bd, top=bd, right=bd, bottom=bd) #设置边框 print dir(ws["A1"])
ws["A1"].style =highlight # Save the file
wb.save('e:\\test4\\s2.xlsx') #练习:设置单元格边框和字体
from openpyxl import Workbook
from openpyxl.styles import Font
from openpyxl.styles import NamedStyle, Font, Border, Side,PatternFill
from openpyxl.styles import PatternFill, Border, Side, Alignment, Protection, Font wb = Workbook()
ws = wb.active ft = Font(name=u'微软雅黑',
size=11,
bold=False,
italic=False,
vertAlign=None,
underline='none',
strike=False,
color='FF000000') fill = PatternFill(fill_type="solid",
start_color='FFEEFFFF',
end_color='FF001100') #边框可以选择的值为:'hair', 'medium', 'dashDot', 'dotted', 'mediumDashDot', 'dashed', 'mediumDashed', 'mediumDashDotDot', 'dashDotDot', 'slantDashDot', 'double', 'thick', 'thin']
#diagonal 表示对角线
bd = Border(left=Side(border_style="thin",
color='FF001000'),
right=Side(border_style="thin",
color='FF110000'),
top=Side(border_style="thin",
color='FF110000'),
bottom=Side(border_style="thin",
color='FF110000'),
diagonal=Side(border_style=None,
color='FF000000'),
diagonal_direction=0,
outline=Side(border_style=None,
color='FF000000'),
vertical=Side(border_style=None,
color='FF000000'),
horizontal=Side(border_style=None,
color='FF110000')
) alignment=Alignment(horizontal='general',
vertical='bottom',
text_rotation=0,
wrap_text=False,
shrink_to_fit=False,
indent=0) number_format = 'General' protection = Protection(locked=True,
hidden=False) ws["B5"].font = ft
ws["B5"].fill =fill
ws["B5"].border = bd
ws["B5"].alignment = alignment
ws["B5"].number_format = number_format ws["B5"].value ="glory road" # Save the file
wb.save('e:\\test4\\s2.xlsx')

【Python】Excel-4(样式设置)的更多相关文章

  1. Asp.Net中应用Aspose.Cells输出报表到Excel 及样式设置

    解决思路: 1.找个可用的Aspose.Cells(有钱还是买个正版吧,谁开发个东西也不容易): 2.在.Net方案中引用此Cells: 3.写个函数ToExcel(传递一个DataTable),可以 ...

  2. POI Excel导出样式设置

    HSSFSheet sheet = workbook.createSheet("sheetName");    //创建sheet sheet.setVerticallyCente ...

  3. Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式

    Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式 解决: xlwt 中设置单元格样式主要 ...

  4. python excel单元格及样式

    python excel单元格及样式: #!/usr/bin/env python # -*- coding: utf-8 -*-” #只对当前文件的中文编码有效 # Filename : Write ...

  5. asp.net将页面内容按需导入Excel,并设置excel样式,下载文件(解决打开格式与扩展名指定的格式不统一的问题)

    //请求一个excel类 Microsoft.Office.Interop.Excel.ApplicationClass excel = null; //创建 Workbook对象 Microsoft ...

  6. 封装对NPOIExcel的操作,方便的设置导出Excel的样式

    下载: http://pan.baidu.com/s/1boTpT5l 使用方法: 导入: 使用 ReadToDataTable方法 导出: NPOIExcel.ExcelManager manger ...

  7. 导出Excel之Epplus使用教程2(样式设置)

    导出Excel之Epplus使用教程1(基本介绍) 导出Excel之Epplus使用教程2(样式设置) 导出Excel之Epplus使用教程3(图表设置) 导出Excel之Epplus使用教程4(其他 ...

  8. DevExpress导出Excel样式设置

    /// <summary> /// 导出到Excel /// </summary> /// <param name="gridControl"> ...

  9. MyXls导出Excel的各种设置

    MyXls是一个操作Excel的开源类库,支持设置字体.列宽.行高(由BOSSMA实现).合并单元格.边框.背景颜色.数据类型.自动换行.对齐方式等,通过众多项目的使用表现,证明MyXls对于创建简单 ...

  10. POI导出复杂的excel;excel公共样式类;excel拼接定制类;数据科学计数法转为普通值

    一.excel公共样式类(包含数据科学计数法转为普通值) package com.thinkgem.jeesite.common.utils.excel; import org.apache.poi. ...

随机推荐

  1. mybatis批量插入的方式

    批量插入数据经常是把一个集合的数据一次性插入数据库,只需要执行一次sql语句,但是批量插入通常会报框架版本号的错误,本人就遇到 com.alipay.zdal.parser.exceptions.a: ...

  2. java中equals与==的比较

    总结来说: 1)对于==,如果作用于基本数据类型的变量,则直接比较其存储的 “值”是否相等: 如果作用于引用类型的变量,则比较的是所指向的对象的地址 2)对于equals方法,注意:equals方法不 ...

  3. CRM WEB UI 01 BOL向导创建的搜索

    创建BOL的步骤就不说了,自己找,学习这个之前,需要自己先找个SAP CRM资料预习一下 T-CODE:BSP_WD_CMPWB 1.创建组件:输入组件名:ZLYTEST03,点击创建按钮,回车,选择 ...

  4. 2017-3-31/socket

    1. 讲讲你对套接字编程的理解,它的协议是如何的? socket通常称为"套接字",用于描述IP地址和端口,是一个通信链的句柄.应用程序通过套接字向网络发出请求或应答网络请求. 服 ...

  5. Golang 在 Mac、Linux、Windows 下如何交叉编译(转)

    原文地址:Golang 在 Mac.Linux.Windows 下如何交叉编译 Golang 支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下. Mac 下 ...

  6. Spring Boot: remove jsessionid from url

    参考代码 :Spring Boot: remove jsessionid from url 我的SpringBoot用2.0.*,答案中的第一二个方案亲测无效. 应该在继承了Configuration ...

  7. python爬虫---BeautifulSoup的用法

    BeautifulSoup是一个灵活的网页解析库,不需要编写正则表达式即可提取有效信息. 推荐使用lxml作为解析器,因为效率更高. 在Python2.7.3之前的版本和Python3中3.2.2之前 ...

  8. 解决iOS第三方SDK之间重复的symbols问题

    前言:今天公司项目准备使用高德导航,其中用到了高德3D地图SDK,然后就出现bug了.在真机上可以完美运行,但是在模拟器上,就出现了一大片的bug:提示有82个Duplicate symbols,仔细 ...

  9. [转]每天一个linux命令(44):top命令

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法.top是一个动态显示过程,即可以通过用户按键来不断刷新 ...

  10. spark使用正则表达式读入多个文件

    String dir = "s3a://example/";String currentDir = dir + "{1[5-9],2[01]}/*.txt";J ...