docs: def filter_by_col_value(self, column_name,
                              min_val=None, max_val=None):
          """filters sheet/table by column.
  
          The routine returns the serial-numbers with min_val <= values >= max_val
          in the selected column.
  
          Args:
              column_name (str): column name.
              min_val (int): minimum value of serial number.
              max_val (int): maximum value of serial number.
  
          Returns:
              pandas.DataFrame
          """
          sheet = self.table
          identity = self.db_sheet_cols.id
          exists_col_number = self.db_sheet_cols.exists
  
          exists = sheet.loc[:, exists_col_number] > 0
  
          if min_val is not None and max_val is not None:
  
              criterion1 = sheet.loc[:, column_name] >= min_val
              criterion2 = sheet.loc[:, column_name] <= max_val
              sheet = sheet[criterion1 & criterion2 & exists]
  
          elif min_val is not None or max_val is not None:
  
              if min_val is not None:
                  criterion = sheet.loc[:, column_name] >= min_val
  
              if max_val is not None:
                  criterion = sheet.loc[:, column_name] <= max_val
  
              # noinspection PyUnboundLocalVariable
              sheet = sheet[criterion & exists]
          else:
              sheet = sheet[exists]
  
          return sheet.loc[:, identity].values.astype(int)