1use karo::{index, Workbook};
4
5struct Expense {
6 item: &'static str,
7 cost: f64,
8}
9
10fn main() -> karo::Result<()> {
11 let expenses = [
12 Expense {
13 item: "Rent",
14 cost: 1000f64,
15 },
16 Expense {
17 item: "Gas",
18 cost: 100f64,
19 },
20 Expense {
21 item: "Food",
22 cost: 300f64,
23 },
24 Expense {
25 item: "Gym",
26 cost: 50f64,
27 },
28 ];
29
30 let mut workbook = Workbook::new();
32
33 {
34 let worksheet = workbook.add_worksheet(None)?;
36
37 let mut row = 0u32;
38 for Expense { item, cost } in expenses.iter() {
39 worksheet.write_string(index(row, 0)?, item, None)?;
40 worksheet.write_number(index(row, 1)?, *cost, None)?;
41 row += 1;
42 }
43
44 worksheet.write_string(index(row, 0)?, "Total", None)?;
45 worksheet.write_formula(index(row, 1)?, "=SUM(B1:B4)", None)?;
46 }
47
48 workbook.write_file("tutorial01.xlsx")?;
49
50 Ok(())
51}