# XLSX 公式注入器

按列批量填充公式，并可锁定公式单元格用于模板保护和只读区域

> 标准页面: https://elysiatools.com/zh/tools/xlsx-formula-injector

- **分类:** Format Conversion

- **关键词:** xlsx, excel, 公式, 锁定单元格, 工作表保护, 模板

## 概述

支持行占位符公式、可编辑输入区、工作表保护和隐藏公式文本，适合预算表、报价单和业务模板。

## 输入项

- **工作簿文件** (file)
- **公式规则 JSON** (textarea): \[ { "sheetName": "Sheet1", "targetColumn": "D", "startRow": 2, "endRow": 100, "formulaTemplate": "=IF($A{{row}}="","",$B{{row}}*$C{{row}})", "numberFormat": "#,##0.00", "styleSourceRow": 2 } \]
- **可编辑区域 JSON** (textarea): \[ { "sheetName": "Sheet1", "range": "A2:C100" } \]
- **保护已处理工作表** (checkbox)
- **锁定公式单元格** (checkbox)
- **隐藏公式文本** (checkbox)
- **工作表保护密码** (text): Leave blank for no password

## 适用场景

- 需要为大量行数据批量填充相同计算逻辑（如利润、总额、百分比）时。
- 制作需要分发给他人填写，但必须保护核心计算公式不被修改的模板文件时。
- 希望自动化报表生成流程，确保公式应用和单元格格式（如数字格式）的一致性时。

## 工作原理

- 上传您的 XLSX 工作簿文件。
- 在“公式规则 JSON”中配置目标工作表、列、行范围以及包含 `{{row}}` 占位符的公式模板。
- （可选）配置可编辑区域、工作表保护密码、是否锁定公式单元格等高级选项。
- 处理完成后，下载已注入公式并应用了相应保护设置的新工作簿。

## 使用案例

- 创建销售业绩报表模板：在利润列自动填充“单价*数量”的公式，并锁定该列，只允许修改单价和数量。
- 制作部门预算模板：在汇总列批量填充 SUM 公式，并保护整个工作表，仅开放预算输入区域供填写。
- 生成标准化报价单：在总价列注入计算公式，并隐藏公式文本，使界面更简洁，同时保护计算逻辑。

## 常见问题

### 如何配置公式规则？

在“公式规则 JSON”文本框中，按示例格式填写一个 JSON 数组。每个对象需指定 `sheetName`（工作表名）、`targetColumn`（目标列，如“D”）、`startRow`/`endRow`（起止行号）和 `formulaTemplate`（公式模板，用 `{{row}}` 表示当前行号）。

### “可编辑区域”有什么作用？

当启用“保护已处理工作表”时，只有在此处定义的单元格区域允许用户编辑，其他区域（包括公式单元格）将被锁定，防止误操作。

### 保护工作表后，如何修改公式？

您需要重新运行本工具，上传原始文件并修改“公式规则 JSON”配置，生成新的文件。或者，在 Excel 中输入正确的工作表保护密码（如果设置了）来解除保护。

### 支持哪些类型的公式？

支持所有 Excel 公式。您只需在 `formulaTemplate` 中提供正确的公式字符串，工具会将其注入到指定单元格。例如 `=SUM(A{{row}}:C{{row}})`。

### 可以同时处理多个工作表吗？

可以。您只需在“公式规则 JSON”数组中添加多个对象，每个对象通过 `sheetName` 指定不同的工作表，即可为多个工作表分别配置不同的公式规则。

## 相关工具

- [XLSX 列映射器](https://elysiatools.com/zh/tools/xlsx-column-mapper): 按规则重命名/重排/删除列，支持别名、大小写、空格处理
- [XLSX 打印设置打包器](https://elysiatools.com/zh/tools/xlsx-print-setup-pack): 一键设置纸张、边距、缩放、重复标题行和页眉页脚
- [XLSX 模板填充器](https://elysiatools.com/zh/tools/xlsx-template-filler): 基于现有模板替换 {{variable}} 占位符，保留样式/公式
- [XLSX 图表嵌入器](https://elysiatools.com/zh/tools/xlsx-chart-embedder): 从工作簿数据区域生成柱状图/饼图图片并嵌入 Excel 工作表
- [XLSX 条件格式规则器](https://elysiatools.com/zh/tools/xlsx-conditional-formatting-rule): 批量应用 Excel 条件格式，如阈值标红、数据条与色阶
- [XLSX 数据验证下拉管理器](https://elysiatools.com/zh/tools/xlsx-data-validation-dropdown): 批量创建下拉选项、级联下拉和输入提示
- [XLSX 冻结窗格管理器](https://elysiatools.com/zh/tools/xlsx-freeze-pane-manager): 自动冻结首行/首列，并批量设置行列分组大纲
- [XLSX 命名区域注入器](https://elysiatools.com/zh/tools/xlsx-named-range-injector): 批量创建或更新工作簿命名区域，便于公式引用和模板复用

## 示例

- [XLSX 样本](https://elysiatools.com/zh/samples/xlsx-samples): 用于工作表解析与数据提取测试的 XLSX 样本
- [XLS 样本](https://elysiatools.com/zh/samples/xls-samples): 用于二进制表格解析与导入测试的旧版 Excel (XLS) 表格样本
- [Android Java 序列化示例](https://elysiatools.com/zh/samples/android-serialization-java): Android Java 序列化示例，包括JSON序列化、反序列化和XML解析
- [Android Kotlin 序列化示例](https://elysiatools.com/zh/samples/android-serialization-kotlin): Android Kotlin 序列化示例，包括JSON序列化、反序列化和XML解析
