def writeErrorRec(record): """ Exception report spreadsheet output format same as input format and assumes first column is of type Date - adds an extra, last column for error message. """ dateFmt = XFStyle() dateFmt.num_format_str = 'MM-DD-YYYY' defaultFmt = XFStyle() global erroutRow for colnum in range(0, len(headers)): erroutSheet.write( erroutRow, colnum, record[headers[colnum][0]], tern(headers[colnum][0] == xlrd.XL_CELL_DATE, dateFmt, defaultFmt)) # add extra column for error message erroutSheet.row(erroutRow).write(len(headers), record['Error']) erroutRow += 1 # flush every 200 rows... #if ((erroutRow % 200) + 1 == 200): # since, xlwt uses aggressive caching, we must # write each row manually, or the data may be lost upon exception erroutSheet.flush_row_data() errorsWorkbook.save('errors.xls')
def write_row(self, array): """ write a row into the file """ for i in range(0, len(array)): value = array[i] style = None tmp_array = [] if isinstance(value, datetime.datetime): tmp_array = [ value.year, value.month, value.day, value.hour, value.minute, value.second ] value = xlrd.xldate.xldate_from_datetime_tuple(tmp_array, 0) style = XFStyle() style.num_format_str = DEFAULT_DATETIME_FORMAT elif isinstance(value, datetime.date): tmp_array = [value.year, value.month, value.day] value = xlrd.xldate.xldate_from_date_tuple(tmp_array, 0) style = XFStyle() style.num_format_str = DEFAULT_DATE_FORMAT elif isinstance(value, datetime.time): tmp_array = [value.hour, value.minute, value.second] value = xlrd.xldate.xldate_from_time_tuple(tmp_array) style = XFStyle() style.num_format_str = DEFAULT_TIME_FORMAT if style: self.native_sheet.write(self.current_row, i, value, style) else: self.native_sheet.write(self.current_row, i, value) self.current_row += 1
def export_to_excel(self, **kwargs): work_book = Workbook(encoding="ascii") center_alignment = Alignment() center_alignment.horz = Alignment.HORZ_RIGHT center_alignment.vert = Alignment.VERT_CENTER border = Borders() border.top = Borders.THIN border.left = Borders.THIN border.bottom = Borders.THIN border.right = Borders.THIN head_style = XFStyle() head_pattern = Pattern() head_pattern.pattern = Pattern.SOLID_PATTERN head_pattern.pattern_fore_colour = Style.colour_map['gray25'] head_style.pattern = head_pattern head_font = Font() head_font.bold = True head_style.font = head_font head_style.alignment = center_alignment head_style.borders = border data_style = XFStyle() data_style.alignment = center_alignment data_style.borders = border work_sheet = work_book.add_sheet("Sheet") limit = 10000 count = self.get_data_scale(**kwargs)['count'] times = (count + limit - 1) // limit add_header = False for i in range(1): kwargs["startIndex"] = i * limit + 1 kwargs['endIndex'] = (i + 1) * limit + 1 records = self.get_data(**kwargs) column_names = [] y = 0 for data in records: if not add_header: x = 0 for column_name in data.keys(): work_sheet.write(y, x, column_name, head_style) column_names.append(column_name) x += 1 add_header = True y += 1 x = 0 for column_name in column_names: work_sheet.write(y, x, data[column_name], data_style) x += 1 y += 1 x = 0 work_book.save(BASE_WIN_OUTPUT_PATH + "result.xls")
def __init__(self, *args, **kwargs): super(ExcelEmitter, self).__init__(*args, **kwargs) self.mdy_style = XFStyle() self.mdy_style.num_format_str = 'MM/DD/YYYY' self.mdyhm_style = XFStyle() self.mdyhm_style.num_format_str = 'MM/DD/YYYY h:mm'
def writeXls(self, file_name): #写入Excel表格 movie_list = [ '上映年份', '片名', '导演', '编剧', '主演', '类型', '制片国家地区', '语言', '又名', '上映日期', '片长', 'IMDB链接/影片地址', '评分', '评价人数', '页面网址', '短评', '话题' ] xls = ExcelWrite.Workbook() sheet = xls.add_sheet("Sheet1") #写入表1 style = XFStyle() pattern = Pattern() # 创建一个模式 pattern.pattern = Pattern.SOLID_PATTERN # 设置其模式为实型 pattern.pattern_fore_colour = 0x16 #设置其模式单元格背景色 # 设置单元格背景颜色 0 = Black, 1 = White, 2 = Red, 3 = Green, 4 = Blue, 5 = Yellow, 6 = Magenta, the list goes on... style.pattern = pattern for i in range(len(movie_list)): #写入首行信息,为表头,表示列名 sheet.write(0, i, movie_list[i], style) sheet.col(i).width = 5240 actors_list = ['姓名', '性别', '星座', '年龄', '出生地', '职业', '简介'] sheet2 = xls.add_sheet("Sheet2") style2 = XFStyle() style2.pattern = pattern for i in range(len(actors_list)): # 写入首行信息,为表头,表示列名 sheet2.write(0, i, actors_list[i], style2) sheet2.col(i).width = 5140 try: #连接数据库读取数据 conn = pymysql.connect(host='localhost', user='******', password='******', db='mytest', port=3306, charset='utf8') cur = conn.cursor() sql = 'select * from movies' cur.execute(sql) row = 0 for movie_info in cur.fetchall(): #遍历数据库中每行信息,一行表示一部电影的所有信息 row = row + 1 #第0行为表头,不添加数据,因此从第一列开始写入 for i in range(len(movie_info) - 1): #对于一行信息进行遍历,分别存入每列 sheet.write(row, i, movie_info[i + 1]) sql = "select id,name,sex,star,date_format(from_days(to_days(now())-to_days(birthday)),'%Y')+0,place,job,message from actors" cur.execute(sql) row = 0 for actor_info in cur.fetchall(): # 遍历数据库中每行信息,一行表示一部电影的所有信息 row = row + 1 # 第0行为表头,不添加数据,因此从第一列开始写入 for i in range(len(actor_info) - 1): # 对于一行信息进行遍历,分别存入每列 sheet2.write(row, i, actor_info[i + 1]) xls.save(file_name) #写入完成,存储 cur.close() conn.close() wx.MessageBox('数据已导出到桌面!!!', caption="导出成功") except: wx.MessageBox('数据导出失败!!!', caption="导出失败")
def excel_writer(filenames): style2 = XFStyle() style2.num_format_str = '####.##0' al = Alignment() al.horz = Alignment.HORZ_CENTER al.vert = Alignment.VERT_BOTTOM style2.alignment = al style3 = XFStyle() style3.num_format_str = '0.00%' style3.alignment = al wb = Workbook() sheet1 = wb.add_sheet("Sheet 1") index = 0 columns_list = ['c', 'e', 'f', 'g', 'h', 'i', 'k', 'l', 'm'] if True: print(f"{bcolors.WARNING}PLEASE INPUT THE 9 COLUMN LETTERS YOU NEED SEPARATED WITH A COMMA{bcolors.ENDC}") print(f"{bcolors.WARNING}Example: D,A,B,C,F,G,E,K,W{bcolors.ENDC}") columns = input() while invalid(columns): print(f"{bcolors.FAIL}INVALID INPUT{bcolors.ENDC}") print(f"{bcolors.WARNING}Example: D,A,B,C{bcolors.ENDC}") columns = input() columns_list = re.split(',', columns) sheet1.write(index, letters_to_indexes(columns_list[0]), "Concurrent Users") sheet1.write(index, letters_to_indexes(columns_list[1]), "Average Total Execution Time (sec)") sheet1.write(index, letters_to_indexes(columns_list[2]), "90% Total Execution Time (sec)") sheet1.write(index, letters_to_indexes(columns_list[3]), "Min Total Execution Time (sec)") sheet1.write(index, letters_to_indexes(columns_list[4]), "Max Total Execution Time (sec)") sheet1.write(index, letters_to_indexes(columns_list[5]), "Number of Calls") sheet1.write(index, letters_to_indexes(columns_list[6]), "Error Rate (%)") sheet1.write(index, letters_to_indexes(columns_list[7]), "Date") sheet1.write(index, letters_to_indexes(columns_list[8]), "Start Time") index = 1 for file in filenames: print(file) numtuple = getnumbers(file) print(numtuple) sheet1.write(index, letters_to_indexes(columns_list[0]), numtuple[6]) sheet1.write(index, letters_to_indexes(columns_list[1]), numtuple[0], style2) sheet1.write(index, letters_to_indexes(columns_list[2]), numtuple[1], style2) sheet1.write(index, letters_to_indexes(columns_list[3]), numtuple[2], style2) sheet1.write(index, letters_to_indexes(columns_list[4]), numtuple[3], style2) sheet1.write(index, letters_to_indexes(columns_list[5]), numtuple[4]) sheet1.write(index, letters_to_indexes(columns_list[6]), numtuple[5], style3) sheet1.write(index, letters_to_indexes(columns_list[7]), str(date.today())) sheet1.write(index, letters_to_indexes(columns_list[8]), "4:42:00") index += 1 wb.save("example.xls")
def __init__(self): """Initialize class""" APIView.__init__(self) self._file_title = '' self._topic = '' self._times = [] self.__workbook = Workbook(encoding='utf-8') self._response = HttpResponse(content_type='application/ms-excel') self._head_row_style = XFStyle() self._data_row_style = XFStyle() self.__start_row = 5 self.__start_column = 5 self.__message_row = 2 self.__message_col = 2
def setStyle(n): pattern = Pattern() pattern.pattern = Pattern.SOLID_PATTERN pattern.pattern_fore_colour = n style = XFStyle() style.pattern = pattern return style
def write_result(self, row, actualresult, result, casefile): # 文件不用写全路径,只写文件名只可 self.lock.acquire() case_path = os.path.join(CASEPATH, casefile) print(case_path) book = xlrd.open_workbook(case_path) # 创建一个excel操作对象 book2 = copy( book ) #复制book对象 #管道作用:利用xlutils.copy函数,将xlrd.Book转为xlwt.Workbook,再用xlwt模块进行存储 sheet = book2.get_sheet(0) # 创建一个sheet操作实例,读取的是第一个excel ,#通过get_sheet()获取的sheet有write()方法 # 红色 # styleBlueBkg = xlwt.easyxf('pattern: pattern solid, fore_colour red;') style = XFStyle() # 格式信息 font = xlwt.Font() # 字体基本设置 # 红色 font.colour_index = 0xff style.font = font sheet.write(row, 11, actualresult) # 回写时,如果是失败,则颜色标成红色 # if result=='0': # # sheet.write(row, 12, result,styleBlueBkg) # sheet.write(row, 12, result,style) # else: # sheet.write(row, 12, result) sheet.write(row, 12, result) # sheet.write(row, 13, user) book2.save(case_path) print('结果写入保存成功!') self.lock.release()
def RUNN(): # ghi file excel fnt = Font() fnt.name = "Times New Roman" fnt.height = 280 borders = Borders() borders.left = Borders.THIN borders.right = Borders.THIN borders.top = Borders.THIN borders.bottom = Borders.THIN style = XFStyle() style.font = fnt style.borders = borders wb = Workbook() sheet1 = wb.add_sheet("Điểm") col = 0 row = 0 sheet1.write(row, col, "STT", style) sheet1.write(row, col + 1, "TÊN BÀI LÀM", style) sheet1.write(row, col + 2, "ĐIỂM", style) row += 1 diem = [] st = 1 for i in t: if i == name_form: continue else: try: t1 = docx.Document(i) sheet1.write(row, col, st, style) sheet1.write(row, col + 1, i[:-5], style) sheet1.write(row, col + 2, round(10 * so_sanh(t1), 2), style) row += 1 st += 1 except Exception: pass wb.save("KetQua.xls")
def set_style(self, isblod): style = XFStyle() fnt = Font() # 创建一个文本格式,包括字体、字号和颜色样式特性 fnt.name = u'微软雅黑' # 设置其字体为微软雅黑 fnt.bold = isblod style.font = fnt return style
def getDefualtStyle(): fnt = Font() fnt.name = 'Arial' borders = Borders() borders.left = Borders.THIN borders.right = Borders.THIN borders.top = Borders.THIN borders.bottom = Borders.THIN #pattern = Pattern() #pattern.pattern = Style.pattern_map['solid'] ###pattern.pattern_back_colour = 0xBFBFBF #pattern.pattern_fore_colour = 0x37 alignment = Alignment() #alignment.horizontal = Alignment.HORZ_LEFT alignment.horizontal = Alignment.HORZ_RIGHT style = XFStyle() #~ style.num_format_str='0.000%' #~ style.num_format_str='0+' #~ style.font = fnt style.align = alignment style.borders = borders #~ style.pattern = pattern return style
def __init__(self, encoding='utf-8'): self.nline = 0 self.wb = wb = Workbook(encoding=encoding) self.ws = wb.add_sheet('sheet 1') self.date_format = XFStyle() self.date_format.num_format_str = 'dd/mm/yyyy' # TODO: convert from settings.DATE_FORMAT self.truncate_prefix = _('(truncated cell)') # TODO: cached_gettext
def css2excel(css): #custom_css = 'font: name "%s", %s on'%(current_value['font-family'].split(",")[0], current_value['font-weight'].split(",")[0]) #export_sheet.write(row_idx, col_idx, current_value['data'], xlwt.easyxf('font: italic on; pattern: pattern solid, fore-colour grey25')) xf_list = [] fnt = Font() borders = Borders() pattern = Pattern() align = Alignment() process_css = { 'font-family' : [fnt, "name" , lambda x : x.split(",")[0]], 'color' : [fnt, "colour_index", lambda x : excel_color_map.get(x,0)+8], 'font-weight' : [fnt, "bold", lambda x : x.upper() == 'BOLD'], #'font-weight' : [fnt, "bold", lambda x : x == '700'], 'text-align' : [align, "horz", lambda x : {'left':align.HORZ_LEFT, 'right':align.HORZ_RIGHT, 'center':align.HORZ_CENTER, 'justified': align.HORZ_JUSTIFIED}[x]], 'background-color' : [pattern,"pattern_fore_colour", lambda x: excel_color_map.get(x,16)+8], } #TODO process_css -> css for i in process_css.keys(): #print process_css[i][0] ,".",process_css[i][1], " => " , css[i] ," | ", process_css[i][2](css[i]) setattr(process_css[i][0], process_css[i][1], process_css[i][2](css[i])) style = XFStyle() style.font = fnt borders.left = Borders.THIN borders.right = Borders.THIN borders.top = Borders.THIN borders.bottom = Borders.THIN style.borders = borders style.pattern = pattern style.pattern.pattern = 1 style.alignment = align return style
def dictToXls(data): from xlwt import Workbook,XFStyle from cStringIO import StringIO date_format = XFStyle() date_format.num_format_str = 'dd/mm/YYYY' stream = StringIO() wb = Workbook(encoding='utf8') from datetime import datetime,date for sheetname in data['sheets']: sheet = data['data'][sheetname] ws = wb.add_sheet(sheetname) for j,field in enumerate(sheet['fields']): fieldtxt = field[1] if isinstance(field,tuple) else field ws.row(0).write(j,fieldtxt) for i,row in enumerate(sheet['data']): for j,field in enumerate(sheet['fields']): fieldtxt = field[0] if isinstance(field,tuple) else field f = row.get(fieldtxt,None) if isinstance(f,date) or isinstance(f,datetime): ws.row(i+1).write(j,f,date_format) else: ws.row(i+1).write(j,f) wb.save(stream) return stream.getvalue()
def get_style( font_specs=dict(), border_specs=dict(), pattern=None, num_format_str=None, ): style_key = (freeze(font_specs), freeze(border_specs), pattern, num_format_str) try: return styles[style_key] except KeyError: style = XFStyle() style.font = Font() for key, value in font_specs.items(): setattr(style.font, key, value) style.borders = Borders() for key, value in border_specs.items(): setattr(style.borders, key, value) if pattern: style.pattern = pattern if num_format_str: style.num_format_str = num_format_str styles[style_key] = style return style
def render(self, request, context, **response_kwargs): from xlwt import Workbook, XFStyle, easyxf w = Workbook(encoding='utf-8') ws = w.add_sheet('Report') style = XFStyle() row = 0 heading_xf = easyxf('font:height 200; font: bold on; align: wrap on, vert centre, horiz center') ws.write(row, 0, '#', style) for col, fieldname in enumerate(context['report'].headers, start=1): ws.write(row, col, str(fieldname), heading_xf) ws.col(col).width = 5000 ws.row(row).height = 500 # we have to prepare all the styles before going into the loop # to avoid the "More than 4094 XFs (styles)" Error styles = self._get_styles(context) for rownum, data in enumerate(context['report']): ws.write(rownum + 1, 0, rownum + 1) for idx, (fieldname, rowvalue) in enumerate(data.items()): style = styles[rowvalue.column.name] try: ws.write(rownum + 1, idx + 1, with_widget(rowvalue, format='xls'), style) except Exception: #logger.warning("TODO refine this exception: %s" % e) ws.write(rownum + 1, idx + 1, smart_str(with_widget(rowvalue)), style) f = StringIO.StringIO() w.save(f) f.seek(0) return f.read()
def Style2(): style1 = XFStyle() alignment = xlwt.Alignment() alignment.horz = xlwt.Alignment.HORZ_CENTER alignment.vert = xlwt.Alignment.VERT_CENTER style1.alignment = alignment # 给样式添加文字居中属性 style1.font.height = 330 # 设置字体大小 return style1
def setupFormat(self): headFont = Font() headFont.bold = True alignmentSetup = Alignment() alignmentSetup.wrap = True borders = Borders() borders.left = 1 borders.right = 1 borders.top = 1 borders.bottom = 1 self.header_style = XFStyle() self.header_style.font = headFont self.table_style = XFStyle() self.table_style.borders = borders self.table_style.alignment = alignmentSetup
def get_report_info_perid( self, cmd, diff_time, thre_time, max_number, ): # 发送要执行的命令 pre_time_stamp = [0] * 4 self._channel.send(cmd + '\r') # 回显很长的命令可能执行较久,通过循环分批次取回回显 index = [0] * 4 line_counter = 0 line_feed_byte = '\n'.encode(self.encoding) while True: buffer = self._channel.recv(65535) if len(buffer) == 0: logger.info('end______________') break lines = buffer.split(line_feed_byte) for current_line in lines: style = None line = current_line.decode(self.encoding) # logger.debug('shell显示:%s' % line) col = self.check_type(line) if not line.startswith(self.rq) or col == 10: line_counter += 1 continue time_stamp = int( time.mktime( time.strptime(' '.join([line[:8], line[9:17]]), "%Y%m%d %H:%M:%S"))) time_stamp_dec = line[18:21] # 精确到毫秒 time_stamp = time_stamp * 1000 + int(time_stamp_dec) logger.info('%s:%s' % (senior_name[col], time_stamp)) if pre_time_stamp[col] == 0: pre_time_stamp[col] = time_stamp else: if abs((time_stamp - pre_time_stamp[col]) - diff_time[col]) > thre_time[col]: logger.error('两帧数据间隔为{}ms,时间戳分别为:({},{}),行号:{}'.format( time_stamp - pre_time_stamp[col], time_stamp, pre_time_stamp[col], index[col])) style = XFStyle() fnt = Font() fnt.name = u'微软雅黑' # 设置其字体为微软雅黑 fnt.colour_index = 2 # 设置其字体颜色 fnt.bold = True style.font = fnt self.write_xl(index[col] + 1, col * 2, time_stamp) self.write_xl(index[col] + 1, col * 2 + 1, time_stamp - pre_time_stamp[col], style=style) index[col] += 1 pre_time_stamp[col] = time_stamp line_counter += 1
def style(fontsize=10, bold=False, italic=False, align=None): """ XFStyle builder helper """ style = XFStyle() style.font.height = twips(fontsize) style.font.bold = bold style.font.italic = italic if align is not None: style.alignment = align return style
def build_certificate_excel(queryset): workbook = xlwt.Workbook() sheet = workbook.add_sheet("Сертификаты") title_style = XFStyle() borders = Borders() borders.bottom = Borders.MEDIUM borders.right = Borders.MEDIUM borders.left = Borders.MEDIUM title_style.borders = borders title_style.font = easyfont(f"bold on, height {12*20};") font_style = XFStyle() font_style.font = easyfont(f"height {12*20};") sheet.write(0, 1, "ФИО", title_style) sheet.write(0, 2, "№ Договора", title_style) sheet.write(0, 3, "ИНН", title_style) sheet.write(0, 4, "День", title_style) sheet.write(0, 5, "Месяц", title_style) sheet.write(0, 6, "Год", title_style) sheet.write(0, 7, "Сертификат №", title_style) for r, obj in enumerate(queryset): n = r + 1 sheet.write(n, 0, str(n), font_style) sheet.write(n, 1, str(obj.full_name), font_style) sheet.write(n, 2, str(obj.contract_n), font_style) sheet.write(n, 3, str(obj.inn), font_style) sheet.write(n, 4, str(obj.date_received.year), font_style) sheet.write(n, 5, str(obj.date_received.month), font_style) sheet.write(n, 6, str(obj.date_received.day), font_style) sheet.write(n, 7, str(obj.certificate_n), font_style) sheet.col(0).width = 1400 sheet.col(1).width = 14000 sheet.col(2).width = 4500 sheet.col(3).width = 4000 sheet.col(7).width = 5500 file = BytesIO() workbook.save(file) return file
def export_vehicles(request,lenguage,vehicle_list): email_template = '/email/0/' error_list = 'Empty List' if int(lenguage) == 1: email_template = '/email/1/' error_list = 'Lista vacía' if not Validator.validate_view(request): return redirect(email_template) if len(vehicle_list) > 0: user_id = request.session['id'] response = HttpResponse(content_type='application/ms-excel') response['Content-Disposition'] = 'attachment; filename="vehicles.xls"' if int(lenguage) == 1: response['Content-Disposition'] = 'attachment; filename="vehiculos.xls"' wb = xlwt.Workbook(encoding='utf-8') ws = wb.add_sheet('Trailers') row_num = 0 rows_vehicle = Vehicle.objects.filter(economic_no__in = vehicle_list).filter(user_id=user_id).values_list('economic_no','vin','plate_no', 'country','state','year', 'model','brand','type','status', ) date_format = XFStyle() date_format.num_format_str = 'M/D/YY' for row_vehicle in rows_vehicle: row_num += 1 columns = [ 'Economic No', 'Vin','Plate No', 'Country', 'State', 'Year', 'Model', 'Brand','type','status' ] if int(lenguage) == 1: columns = [ 'No. Económico', 'Vin', 'No. de Placas', 'País', 'Estado', 'Año', 'Modelo', 'Marca', 'Tipo','Condición' ] row_num = XlsGenerator.create_headers(columns, ws, row_num) row_num = XlsGenerator.create_content(ws,row_num,row_vehicle,xlwt.XFStyle()) wb.save(response) return response return render(request,'hound-eng/error.html',{'error':error_list})
def write_to_book(sheet: Worksheet, row: int, cur_inf: dict): """ Запись обработанной информации в Worksheet. """ row = sheet.row(row) style = XFStyle() for index, value in enumerate(cur_inf.values()): if (row != 0) and (index != 0 or 3): style.num_format_str = '"₽"#,##0.0000;"₽"#,##0.0000' sheet.col(index).width = 4000 row.write(index, value, style=style)
def style_base(): style = XFStyle() style.alignment.vert = Alignment.VERT_TOP style.alignment.wrap = True style.font.height = 180 # 9pt borders = style.borders borders.left = Borders.THIN borders.right = Borders.THIN borders.top = Borders.THIN borders.bottom = Borders.THIN return style
def Style1(): style = XFStyle() fnt = Font() fnt.name = u'微软雅黑' fnt.bold = True style.font = fnt alignment = xlwt.Alignment() alignment.horz = xlwt.Alignment.HORZ_CENTER alignment.vert = xlwt.Alignment.VERT_CENTER style.alignment = alignment # 给样式添加文字居中属性 style.font.height = 430 # 设置字体大小 return style
def excelWriter(self, filename): workbook1 = xlwt.Workbook() sheet1 = workbook1.add_sheet('表01') sheet1.write(0, 0, 'Unformated value') sheet1.write(0, 1, '大家好') # 设置字体样式 font1 = Font() font1.name = '华文琥珀' style = XFStyle() style.font = font1 sheet1.write(1, 0, 'Formated value', style) workbook1.save(filename)
def exportToExcel(self, objectBooks): book = Workbook() sheet1 = book.add_sheet('Sheet 1') if (objectBooks): i = 0 row1 = sheet1.row(i) row1.write(0, ('เลขทะเบียน').decode('UTF8')) row1.write(1, ('ที่').decode('UTF8')) row1.write(2, ('ลงวันที่').decode('UTF8')) row1.write(3, ('จาก').decode('UTF8')) row1.write(4, ('ถึง').decode('UTF8')) row1.write(5, ('เรื่อง').decode('UTF8')) row1.write(6, ('การปฏิบัติ').decode('UTF8')) row1.write(7, ('หมายเหตุ').decode('UTF8')) i = i + 1 style = XFStyle() style.num_format_str = 'D-MMM-YY' for value in objectBooks: row1 = sheet1.row(i) row1.write(0, value.get('book_number').decode('UTF8')) row1.write(1, value.get('book_at').decode('UTF8')) row1.write(2, value.get('book_recive'), style) row1.write(3, value.get('book_from').decode('UTF8')) row1.write(4, value.get('book_to').decode('UTF8')) row1.write(5, value.get('book_detail').decode('UTF8')) row1.write(6, value.get('book_operations').decode('UTF8')) row1.write(7, value.get('book_remark').decode('UTF8')) #row1.write(7, value.get('book_type_name').decode('UTF8') ); i = i + 1 dirTempFile = gettempdir() + _os.sep + str('books.xls') book.save(dirTempFile) #book.save(TemporaryFile()); return dirTempFile
def write_file(headers, data): wb = Workbook() font = Font() style = XFStyle() page = wb.add_sheet('All Data') for i in range(len(data)): font.bold = True style.font = font page.write(0, i, headers[i], style=style) for j in range(len(data[i])): page.write(j + 1, i, data[i][j]) wb.save('info/misc/rating_plot.xls')
def writerow(self, row): for cell, data in enumerate(row): if data is None: data = '' elif not isinstance(data, (int, float, Decimal)): data = unicode(data) style = XFStyle() style.alignment.wrap = 1 self.sheet.write(self._row, cell, data, style) self._row += 1