pub struct AutoFilterColumn {
pub column_offset: u32,
pub visible_values: Vec<String>,
}Expand description
One column’s filter criteria within a Sheet::auto_filter_range
(<filterColumn>/<filters>/<filter>, CT_FilterColumn/ CT_Filters/CT_Filter). Only the
simplest, most common filter form is modeled: a fixed list of checked/visible values —
CT_Filters’s CT_CustomFilters (e.g. “greater than”), CT_Top10, CT_DynamicFilter (e.g.
“this month”), and CT_ColorFilter/CT_IconFilter forms are not.
Fields§
§column_offset: u32This column’s 0-based offset from Sheet::auto_filter_range’s first column (colId) —
e.g. 0 for the filter range’s own first column, regardless of that column’s real sheet
position.
visible_values: Vec<String>The values that remain visible when this filter is applied (<filter val=".."> per entry),
written verbatim as text.
Implementations§
Source§impl AutoFilterColumn
impl AutoFilterColumn
Sourcepub fn new(column_offset: u32, visible_values: Vec<String>) -> AutoFilterColumn
pub fn new(column_offset: u32, visible_values: Vec<String>) -> AutoFilterColumn
Creates a filter column with the given visible values.
Examples found in repository?
examples/xlsx_workbook_metadata.rs (line 47)
16fn main() -> office_toolkit::Result<()> {
17 let path = output_path("xlsx_workbook_metadata.xlsx");
18
19 let named_ranges_sheet = Sheet::new("Named ranges")
20 .with_row(Row::new().with_text("Tax rate").with_number(0.0825))
21 .with_row(Row::new().with_cell(Cell::formula("TaxRate*100").with_cached_value(8.25)));
22
23 let calculation_sheet = Sheet::new("Calculation").with_row(
24 Row::new().with_text("Set to manual recalculation with iterative calculation enabled."),
25 );
26
27 let scenarios_sheet = Sheet::new("Scenarios")
28 .with_row(Row::new().with_text("Revenue").with_number(100_000.0))
29 .with_row(Row::new().with_text("Cost").with_number(60_000.0))
30 .with_scenario(
31 Scenario::new("Best case")
32 .with_input("B1", "150000")
33 .with_input("B2", "55000")
34 .with_comment("Optimistic projection"),
35 )
36 .with_scenario(
37 Scenario::new("Worst case")
38 .with_input("B1", "70000")
39 .with_input("B2", "65000"),
40 );
41
42 let auto_filter_sheet = Sheet::new("Autofilter criteria")
43 .with_row(Row::new().with_text("Region"))
44 .with_row(Row::new().with_text("North"))
45 .with_row(Row::new().with_text("South"))
46 .with_auto_filter_range("A1:A3")
47 .with_auto_filter_column(AutoFilterColumn::new(0, vec!["North".to_string()]));
48
49 let ignored_errors_sheet = Sheet::new("Ignored errors")
50 .with_row(Row::new().with_text("123")) // a number stored as text — normally flagged by Excel
51 .with_ignored_error(IgnoredError::new("A1:A1").with_number_stored_as_text(true));
52
53 let workbook = Workbook::new()
54 .with_defined_name(DefinedName::new("TaxRate", "'Named ranges'!$B$1"))
55 .with_calculation(
56 CalculationProperties::new()
57 .with_mode(CalculationMode::Manual)
58 .with_iterate(true),
59 )
60 .with_sheet(named_ranges_sheet)
61 .with_sheet(calculation_sheet)
62 .with_sheet(scenarios_sheet)
63 .with_sheet(auto_filter_sheet)
64 .with_sheet(ignored_errors_sheet);
65
66 // `Workbook.properties` has no `with_*` builder — it's set directly,
67 // like any other public field.
68 let properties = DocumentProperties::new()
69 .with_title("Metadata example")
70 .with_author("Example Author")
71 .with_subject("Workbook-level features")
72 .with_custom_property(
73 "ProjectCode",
74 CustomPropertyValue::Text("XLSX-META".to_string()),
75 );
76 let workbook = Workbook {
77 properties,
78 ..workbook
79 };
80
81 workbook.save_to_file(&path)?;
82 println!("Wrote {}", path.display());
83 Ok(())
84}Trait Implementations§
Source§impl Clone for AutoFilterColumn
impl Clone for AutoFilterColumn
Source§fn clone(&self) -> AutoFilterColumn
fn clone(&self) -> AutoFilterColumn
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AutoFilterColumn
impl Debug for AutoFilterColumn
Source§impl PartialEq for AutoFilterColumn
impl PartialEq for AutoFilterColumn
impl StructuralPartialEq for AutoFilterColumn
Auto Trait Implementations§
impl Freeze for AutoFilterColumn
impl RefUnwindSafe for AutoFilterColumn
impl Send for AutoFilterColumn
impl Sync for AutoFilterColumn
impl Unpin for AutoFilterColumn
impl UnsafeUnpin for AutoFilterColumn
impl UnwindSafe for AutoFilterColumn
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more