XLCS房产全成本测算模版-首页目录手动更新模块介绍
XLCS房产项目全成本测算模版 — 首页目录手动更新模块介绍
首页目录手动更新模块是 XLCS 房产项目全成本测算模板中的基础导航辅助模块,主要用于自动扫描当前工作簿中的全部工作表,并在 首页 工作表中生成可点击跳转的工作表目录。
该模块适用于模板工作表较多、功能模块较复杂、用户需要快速定位各类测算表单的场景。通过一键生成目录,用户可以在首页快速查看所有工作表,并通过超链接直接跳转至对应工作表,显著提升模板使用效率。
当前版本为 v2.4,支持 Excel / WPS 环境适配,并通过数组批量写入提升目录生成速度。
📌 核心功能一览
| 功能 | 说明 |
|---|---|
| 自动扫描工作表 | 自动遍历当前工作簿中的所有工作表 |
| 自动生成首页目录 | 在 首页 工作表的指定区域生成目录 |
| 自动排除首页自身 | 目录中不会包含 首页 工作表 |
| 支持超链接跳转 | 点击工作表名称即可跳转到对应工作表 A1 |
| 多列目录排版 | 支持三组“序号 + 工作表名称”并列显示 |
| 最多支持 96 个工作表 | 默认 32 行 × 3 组目录 |
| 数组批量写入 | 先写入数组再统一输出,提高速度 |
| 自动清理旧目录 | 运行前清空旧目录内容和旧超链接 |
| 字体格式统一 | 自动设置微软雅黑、字号、颜色和下划线 |
| 序号居中 | 目录序号自动居中显示 |
| 名称左对齐 | 工作表名称自动左对齐 |
| WPS 兼容处理 | 针对 WPS 超链接添加方式做适配 |
| 状态栏进度提示 | 生成过程中显示当前进度 |
⚙️ 模块基本信息
| 项目 | 内容 |
|---|---|
| 模块名称 | 首页目录手动更新模块 |
| 作者 | XLCS-Jgwy |
| 日期 | 2026-06-02 |
| 当前版本 | v2.4 |
| 主过程 | CreateTOC |
| 目录工作表 | 首页 |
| 目录区域 | D3:I34 |
| 起始行 | 第 3 行 |
| 起始列 | D 列 |
| 每组最大行数 | 32 行 |
| 总列数 | 6 列 |
| 目录组数 | 3 组 |
| 最大目录项 | 96 个工作表 |
🚀 适用场景
该模块适用于以下典型场景:
模板首页导航
- 在首页生成完整工作表目录,方便用户快速进入各测算模块。
新增 / 删除工作表后更新目录
- 当模板结构调整后,一键重新生成目录。
大型测算模板管理
- 对于包含大量工作表的 XLCS 模板,通过目录降低查找成本。
交付版模板整理
- 在对外交付模板前,生成清晰目录,提高模板专业度。
WPS / Excel 混合办公
- 支持在 WPS 和 Excel 中生成可点击的目录超链接。
🧩 功能入口说明
| 宏名称 | 功能 | 说明 |
|---|---|---|
CreateTOC |
手动更新首页目录 | 扫描工作簿并在首页生成目录 |
IsWPSEnvironment |
判断是否为 WPS 环境 | 用于兼容不同超链接处理方式 |
调用方式:
Call CreateTOC
🧭 操作流程
第一步:确认首页工作表存在
模块固定将目录生成到:
首页
如果找不到该工作表,会提示:
目录表未找到,请检查工作表名称!
因此运行前请确认工作簿中存在名为 首页 的工作表。
第二步:运行目录更新宏
运行:
Call CreateTOC
系统会自动完成:
- 检测当前是否为 WPS 环境
- 关闭事件和屏幕刷新
- 查找
首页工作表 - 清空旧目录区域
D3:I34 - 删除旧超链接
- 遍历当前工作簿所有工作表
- 排除
首页工作表自身 - 按三组目录结构写入序号和工作表名称
- 为工作表名称添加跳转超链接
- 设置字体、对齐方式
- 恢复状态栏、事件和屏幕刷新
- 弹出完成提示
第三步:点击目录跳转
目录生成后,用户可以点击工作表名称,直接跳转到对应工作表的 A1 单元格。
超链接目标格式:
'工作表名称'!A1
📊 目录输出区域
模块默认使用以下区域:
首页!D3:I34
该区域共 6 列,按三组目录显示。
| 组别 | 序号列 | 工作表名称列 |
|---|---|---|
| 第1组 | D列 | E列 |
| 第2组 | F列 | G列 |
| 第3组 | H列 | I列 |
每组最多 32 行。
因此最大可显示:
32 行 × 3 组 = 96 个工作表
🔍 功能详解
1. 自动扫描所有工作表
模块遍历当前工作簿中的所有工作表:
For Each ws In ThisWorkbook.Worksheets
并自动排除首页:
If ws.Name <> tocSheet.Name Then
这样可以避免首页目录中出现“首页”自身,保持目录清晰。
2. 多列目录自动排版
模块采用“序号 + 工作表名称”为一组的目录结构。
默认参数:
startRow = 3
startCol = 4
maxRowsPerCol = 32
maxCols = 6
其中:
startRow = 3表示从第 3 行开始startCol = 4表示从 D 列开始maxRowsPerCol = 32表示每组最多 32 行maxCols = 6表示总共 6 列,即 3 组目录
排版逻辑:
第 1-32 个工作表 → D:E
第 33-64 个工作表 → F:G
第 65-96 个工作表 → H:I
3. 数组批量写入目录
模块先将目录内容写入数组:
ReDim arr(1 To maxRowsPerCol, 1 To maxCols)
然后一次性写入区域:
rngTOC.Value = arr
这种方式相比逐单元格写入更快,尤其适合工作表较多的模板。
4. 自动添加超链接
目录写入完成后,模块会逐个为工作表名称添加超链接。
Excel 环境下使用:
tocSheet.Hyperlinks.Add _
Anchor:=tocSheet.Cells(rowCount, startCol + colOffset + 1), _
Address:="", _
SubAddress:="'" & ws.Name & "'!A1", _
TextToDisplay:=ws.Name
点击后可直接跳转至对应工作表。
5. WPS 环境适配
模块通过:
IsWPSEnvironment()
判断当前环境是否为 WPS。
WPS 环境中采用更稳妥的写法:
With tocSheet.Cells(rowCount, startCol + colOffset + 1)
.Value = ws.Name
.Hyperlinks.Add .Cells(1), "", "'" & ws.Name & "'!A1"
End With
这样可以提高 WPS 下添加超链接的兼容性。
6. 自动清理旧目录和超链接
运行前,模块会清空目录区域:
rngTOC.ClearContents
并删除旧超链接:
rngTOC.Hyperlinks.Delete
避免目录重复、旧链接残留或工作表改名后链接失效。
7. 统一字体格式
模块会对整个目录区域统一设置字体:
With rngTOC.Font
.Name = "微软雅黑"
.Size = 10
.Color = RGB(0, 0, 0)
.Underline = xlUnderlineStyleNone
End With
这样目录显示更整洁,并去除默认超链接下划线样式。
8. 序号与名称分别对齐
序号列居中:
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
名称列左对齐:
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlCenter
使目录在视觉上更清晰。
9. 状态栏进度提示
生成目录时,状态栏会显示:
正在生成目录 (当前序号/总工作表数)...
便于用户了解当前执行进度。
完成后调用:
ClearStatusBar
恢复默认状态栏。
🧱 模块结构说明
主入口
| 过程名 | 说明 |
|---|---|
CreateTOC |
生成并更新首页工作表目录 |
工具函数
| 函数名 | 说明 |
|---|---|
IsWPSEnvironment |
判断当前运行环境是否为 WPS |
依赖过程
| 过程名 | 说明 |
|---|---|
ClearStatusBar |
清空 Excel / WPS 状态栏显示 |
注:
ClearStatusBar通常为 XLCS 模板中的公共工具过程。
⚙️ 关键参数说明
| 参数 | 默认值 | 说明 |
|---|---|---|
tocSheet |
首页 |
目录所在工作表 |
startRow |
3 | 目录起始行 |
startCol |
4 | 目录起始列,即 D 列 |
maxRowsPerCol |
32 | 每组目录最多显示行数 |
maxCols |
6 | 目录总列数 |
pairCount |
3 | 目录组数 |
maxItems |
96 | 最大目录项数量 |
rngTOC |
D3:I34 | 目录输出区域 |
🧪 使用示例
手动更新首页目录
Sub RunCreateTOC()
Call CreateTOC
End Sub
推荐按钮名称
可在 首页 工作表中添加按钮,并绑定:
更新首页目录
或:
刷新工作表目录
📅 版本说明
| 版本 | 核心改进 |
|---|---|
| v2.4 | 增强 WPS 环境兼容,使用数组批量写入,提高目录生成速度 |
| v2.3 | 优化目录区域清理和超链接删除逻辑 |
| v2.2 | 增加多列排版支持 |
| v2.1 | 增加首页固定区域输出 |
| v1.x | 基础工作表目录生成 |
当前版本:v2.4
🔧 调试与维护建议
1. 提示“目录表未找到”
请检查工作簿中是否存在:
首页
如果首页名称被修改,请同步修改代码中的工作表名称逻辑。
2. 目录显示不完整
模块最多显示 96 个工作表。
如果工作表数量超过 96 个,会提示:
目录区域已满,无法继续生成目录!
解决方式:
- 扩大目录区域
- 增加列数
- 增加每列最大行数
- 删除不必要的工作表
3. 超链接无法点击
请检查:
- 工作表名称是否包含特殊字符
- 工作簿是否处于保护状态
- WPS / Excel 是否禁用了超链接
- 目录区域是否被保护
4. 工作表改名后目录链接错误
工作表新增、删除或改名后,需要重新运行:
Call CreateTOC
模块会重新生成目录和超链接。
5. 超链接仍显示蓝色或下划线
模块已设置:
.Underline = xlUnderlineStyleNone
.Color = RGB(0, 0, 0)
如果样式仍异常,可能是 Excel / WPS 的超链接样式覆盖导致。可手动修改工作簿的“超链接”样式。
💡 常见问题
Q:这个模块会修改其他工作表吗?
A:不会。模块只在 首页 工作表的 D3:I34 区域生成目录和超链接,不会修改其他工作表内容。
Q:目录中会包含首页自己吗?
A:不会。模块会自动排除 首页 工作表。
Q:最多能显示多少个工作表?
A:默认最多 96 个工作表,即 32 行 × 3 组目录。
Q:点击目录会跳转到哪里?
A:跳转到对应工作表的 A1 单元格。
Q:支持 WPS 吗?
A:支持。模块内置 WPS 环境检测,并针对 WPS 使用兼容的超链接添加方式。
Q:为什么先写数组再添加超链接?
A:数组批量写入速度更快,但超链接对象仍需要逐个添加,因此模块采用“批量写入文本 + 逐个添加链接”的方式兼顾速度和功能。
Q:新增工作表后目录会自动更新吗?
A:该模块为手动更新模块。新增、删除或改名工作表后,需要手动运行 CreateTOC。
⚠️ 注意事项
- 使用前请确保已启用宏。
- 请确认工作簿中存在
首页工作表。 - 目录区域
D3:I34会被清空并重写。 - 旧目录超链接会被删除。
- 默认最多支持 96 个工作表。
- 工作表新增、删除或改名后应重新运行目录更新。
- 如果首页被保护,可能无法写入目录或添加超链接。
- 建议将按钮放在首页,方便用户手动刷新。
- 在 WPS 中如超链接异常,可重新运行一次目录更新。
- 运行过程中请勿关闭工作簿。
📞 技术支持
官网:
求助建议: http://xlcs.de/
邮件联系: admin@fdc.sd
📷 模块展示

✅ 总结
XLCS 首页目录手动更新模块能够自动扫描工作簿中的全部工作表,并在首页生成清晰、可点击跳转的目录导航。
它通过数组批量写入提升速度,通过多列排版提高目录容量,并针对 WPS 和 Excel 的超链接差异做了兼容处理。对于 XLCS 这类多工作表、多模块的房产全成本测算模板而言,该模块能够显著提升用户导航效率和模板使用体验。
````









