Skip to content

Latest commit

 

History

History
43 lines (35 loc) · 3.12 KB

File metadata and controls

43 lines (35 loc) · 3.12 KB

eWorkHelper 功能说明

批量文本过滤

  • Ribbon 自定义“工作助手”选项卡提供“批量过滤”。
  • 每行一个过滤条件,自动去除空行、首尾空格和完全重复项(去重不区分大小写,与匹配语义一致)。
  • 支持“等于”“不等于”“包含”“不包含”,匹配不区分大小写。
  • 支持 Excel 表格、已有 AutoFilter 区域,以及用户选择标题行后的普通区域。
  • 匹配以单元格显示文本语义进行:日期列按界面显示的日期文本匹配(不再是 OADate 序列号), 百分比列可按 15% 匹配(也接受 0.15 等原始数值写法);列宽不足显示为 ##### 的单元格不参与匹配。
  • 只管理本工具最近处理的目标字段;清除本次过滤时不主动清除其他字段筛选。
  • 重新打开同一活动筛选时恢复本工具的条件和匹配模式;外部筛选则加载可见唯一值辅助编辑。
  • 长任务通过 Excel 状态栏显示进度、显示等待光标,可按 Esc 协作取消; 结束时无论成功、取消还是异常都会恢复光标、状态栏、ScreenUpdating、EnableEvents 和 Calculation。
  • 零命中时不隐藏全部行,而是提示“没有单元格与当前条件匹配”并保持工作表不变; 匹配唯一值超过 Excel 值列表容量(10000 项)时同样给出明确提示而不抛出原始 COM 错误。

取消合并并填充

  • 处理当前选区触达的全部合并区域,包括 Ctrl 多选和部分相交区域。
  • 使用 Excel 原生 UnMerge(),不改变工作表结构。
  • 对原公式使用 FormulaR1C1 复制语义填充;非公式使用 Value2 填充。
  • 处理前对合并区域去重,避免同一合并区域被重复处理。
  • 错误值单元格(#DIV/0!、#N/A 等)不写回:Value2 的负错误码不会被当作数字填充。
  • 处理期间 Application.Calculation 设为手动计算,结束后恢复,避免逐区域触发整表重算。
  • 数组公式(CSE)与受保护工作表会给出明确提示,而不是笼统的“操作失败”。
  • 操作不是 Excel 事务;若后续区域失败,已完成区域不会自动回滚,错误提示中会说明已完成的数量。

关于入口

Ribbon 末端提供“关于”,显示插件简介和从程序集动态读取的完整产品版本。

已知限制

  • 仅支持 Windows 上的 Excel 桌面版,不支持 Excel 网页版或 macOS 版。
  • 当前 UI 为中文。
  • 文本匹配不支持正则表达式或公式条件。
  • “不区分大小写”使用 .NET OrdinalIgnoreCase,不是完整的 Unicode 大小写折叠: 土耳其语/阿塞拜疆语的 i/İ 等区域特有大小写对不会被视作同一字符。
  • 单个条件最长 8192 字符;匹配唯一值上限受 Excel 值列表容量(10000 项)约束。
  • AutoFilter 值列表和大数据性能取决于 Excel 与本机环境。
  • “清除本次过滤”的状态保存在加载项进程内存中,且每个 Excel 窗口(每个 Ribbon 实例)各有一份: 同一进程内的其他窗口看不到该状态,加载项卸载后状态也不会保留。