use rust_xlsxwriter::{ConditionalFormatFormula, Format, Workbook, XlsxError};
fn main() -> Result<(), XlsxError> {
let mut workbook = Workbook::new();
let format = Format::new()
.set_font_color("006100")
.set_background_color("C6EFCE");
let data = [
[34, 73, 39, 32, 75, 48, 75, 66],
[5, 24, 1, 84, 54, 62, 60, 3],
[28, 79, 97, 13, 85, 93, 93, 22],
[27, 71, 40, 17, 18, 79, 90, 93],
[88, 25, 33, 23, 67, 1, 59, 79],
[23, 100, 20, 88, 29, 33, 38, 54],
[7, 57, 88, 28, 10, 26, 37, 7],
[53, 78, 1, 96, 26, 45, 47, 33],
[60, 54, 81, 66, 81, 90, 80, 93],
[70, 5, 46, 14, 71, 19, 66, 36],
];
let worksheet = workbook.add_worksheet();
worksheet.write_row_matrix(2, 1, data)?;
let conditional_format = ConditionalFormatFormula::new()
.set_rule("=ISEVEN(B3)")
.set_format(&format);
worksheet.add_conditional_format(2, 1, 11, 8, &conditional_format)?;
let worksheet = workbook.add_worksheet();
worksheet.write_row_matrix(2, 1, data)?;
let conditional_format = ConditionalFormatFormula::new()
.set_rule("=ISEVEN($B3)")
.set_format(&format);
worksheet.add_conditional_format(2, 1, 11, 8, &conditional_format)?;
let worksheet = workbook.add_worksheet();
worksheet.write_row_matrix(2, 1, data)?;
let conditional_format = ConditionalFormatFormula::new()
.set_rule("=ISEVEN(B$3)")
.set_format(&format);
worksheet.add_conditional_format(2, 1, 11, 8, &conditional_format)?;
let worksheet = workbook.add_worksheet();
worksheet.write_row_matrix(2, 1, data)?;
let conditional_format = ConditionalFormatFormula::new()
.set_rule("=ISEVEN($B$3)")
.set_format(format);
worksheet.add_conditional_format(2, 1, 11, 8, &conditional_format)?;
workbook.save("conditional_format.xlsx")?;
Ok(())
}