def do_sheet(self, elem): bk = self.bk sheetx = bk.nsheets # print elem.attrib rid = elem.get(U_ODREL + 'id') sheetId = int(elem.get('sheetId')) name = unescape(ensure_unicode(elem.get('name'))) reltype = self.relid2reltype[rid] target = self.relid2path[rid] if self.verbosity >= 2: self.dumpout( 'sheetx=%d sheetId=%r rid=%r type=%r name=%r', sheetx, sheetId, rid, reltype, name) if reltype != 'worksheet': if self.verbosity >= 2: self.dumpout('Ignoring sheet of type %r (name=%r)', reltype, name) return state = elem.get('state') visibility_map = { None: 0, 'visible': 0, 'hidden': 1, 'veryHidden': 2 } bk._sheet_visibility.append(visibility_map[state]) sheet = Sheet(bk, position=None, name=name, number=sheetx) sheet.utter_max_rows = X12_MAX_ROWS sheet.utter_max_cols = X12_MAX_COLS bk._sheet_list.append(sheet) bk._sheet_names.append(name) bk.nsheets += 1 self.sheet_targets.append(target) self.sheetIds.append(sheetId)
def make_sheet(rows, book=None, name='test sheet', number=0): if book is None: book = DummyBook() book._sheet_visibility.append(0) sheet = Sheet(book, 0, name, number) book.add(sheet) for rowx in range(len(rows)): row = rows[rowx] for colx in range(len(row)): value = row[colx] if isinstance(value, tuple): cell_type, value = value else: cell_type = XL_CELL_TEXT sheet.put_cell(rowx, colx, cell_type, value, 0) return sheet