code: public function duplicateConditionalStyle(array $pCellStyle, $pRange = '')
      {
          foreach ($pCellStyle as $cellStyle) {
              if (!($cellStyle instanceof Conditional)) {
                  throw new Exception('Style is not a conditional style');
              }
          }
  
          // Calculate range outer borders
          list($rangeStart, $rangeEnd) = Coordinate::rangeBoundaries($pRange . ':' . $pRange);
  
          // Make sure we can loop upwards on rows and columns
          if ($rangeStart[0] > $rangeEnd[0] && $rangeStart[1] > $rangeEnd[1]) {
              $tmp = $rangeStart;
              $rangeStart = $rangeEnd;
              $rangeEnd = $tmp;
          }
  
          // Loop through cells and apply styles
          for ($col = $rangeStart[0]; $col <= $rangeEnd[0]; ++$col) {
              for ($row = $rangeStart[1]; $row <= $rangeEnd[1]; ++$row) {
                  $this->setConditionalStyles(Coordinate::stringFromColumnIndex($col) . $row, $pCellStyle);
              }
          }
  
          return $this;
      }
docs: Duplicate conditional style to a range of cells.
  
  Please note that this will overwrite existing cell styles for cells in range!
  
  @param Conditional[] $pCellStyle Cell style to duplicate
  @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1")
  
  @throws Exception
  
  @return Worksheet