コード例 #1
0
ファイル: mergerx.py プロジェクト: zhangyu836/xltpl
 def add_new_range(self, dv_key, range):
     dv_copy = self.dv_copy_map.get(dv_key)
     if not dv_copy:
         dv_copy = copy(self.dv_map[dv_key])
         dv_copy.ranges = MultiCellRange()
         self.dv_copy_map[dv_key] = dv_copy
     dv_copy.ranges.add(range)
コード例 #2
0
 def add_cell_range(self, rdcoords2d, crange):
     rlo, rhi, clo, chi = crange
     cr = CellRange(min_row=rlo, max_row=rhi, min_col=clo, max_col=chi)
     dv = self.dv_copies.get(rdcoords2d)
     if not dv:
         dv = copy(self._orig_map.get(rdcoords2d))
         dv.ranges = MultiCellRange()
         self.dv_copies[rdcoords2d] = dv
     dv.ranges.add(cr)
コード例 #3
0
ファイル: _reader.py プロジェクト: chenlei0x/yc
    def bind_merged_cells(self):
        from openpyxl.worksheet.cell_range import MultiCellRange
        from openpyxl.worksheet.merge import MergedCellRange
        if not self.parser.merged_cells:
            return

        ranges = []
        for cr in self.parser.merged_cells.mergeCell:
            mcr = MergedCellRange(self.ws, cr.ref)
            self.ws._clean_merge_range(mcr)
            ranges.append(mcr)
        self.ws.merged_cells = MultiCellRange(ranges)
コード例 #4
0
def get_cf_rule(index, sheet, fail):
    for conditional_formatting in sheet.conditional_formatting:
        if MultiCellRange(index) == conditional_formatting.sqref:
            return conditional_formatting.cfRule[0]
    fail()