七月上旬更新速递丨 聚焦集成、安全与AI深度进化

更新亮点: 本次重点强化系统集成能力与AI认知升级,新增4大核心模块9项资源,优化4项资源,点击标题了解(持续互动赢麦豆,解锁高阶技能)

重点推荐:《场景化数据分析实战》课程操作手册

配套六月王炸课程的全套落地指南,手把手教你复现实战场景!

二、实战技巧分享

高效处理资源集成难题》→ 从基础出发,深入探究集成的秘密

三、开发技能突破

第三方系统调用Smartbi接口》→讲解系统集成时的jar包获取,以及集成时代码调用的基本流程。

集成接口介绍》→梳理Smartbi目前提供的接口,以及不同接口的调用流程。

AI每日一学

DeepSeek-R1-0528模型升级:推理与生态的双重升级》→ 解析模型性能提升40%的关键技术 (技术前沿)

简单总结一下机器学习中的几种常见的学习方式与区别》→ 监督/无监督/强化学习差异与应用场景图解 (基础重构)

五、资源更新

CAS单点登录 V2版》上线→ 接入到 CAS 平台中,并实现单点登录

组织/用户/角色信息管理API接口》上线→ 一套 HTTP API的组织、用户、角色信息管理接口

竹云统一身份认证平台组织用户同步对接》上线→ Smartbi封装对应的服务接口,给竹云的统一身份认证平台实时调用,完成组织、用户和角色信息的实时同步。

交互式仪表盘支持自定义字体》优化→ 修复了文本组件编辑状态不生效的问题

只允许外网某种移动端APP访问》优化→ 针对V11版本,增加了钉钉、企业微信访问限制功能

AD域(LDAP/LDAPS)登录验证》优化→ 修复了“更新白名单状态之前没有判断判断用户是否存”的问题

元数据分析落地到知识库》优化→ 增加获取资源创建者的逻辑判断,对空值空对象等情况做优化

麦粉社区
>
帖子详情

[报表开发] 电子表格性能优化实战技巧

动态中心 发表于 2025-6-10 16:31
发表于 2025-6-10 16:31:46

各位报表斗士们!无论是处理大数据量报表,还是构建复杂的业务分析模型,性能优化都是提升工作效率的关键。掌握电子表格(包含Web版和插件版)性能优化实战技巧,拯救龟速表格,我们的"实战技巧"包括:


 


一:报表结构优化


1. 合理拆分报表


当报表sheet过多时,建议拆分成多个独立的报表文件,避免单个文件过于臃肿,提高加载和操作效率。


 


2. 避免空白行列占用空间


常见的误操作会导致报表文件过大,例如:



  • 对整行/整列设置格式(如背景色、边框等)

  • 隐藏大量未使用的行/列(如拉到最后一列隐藏)


建议仅对实际使用的区域设置格式,减少无效数据占用。


 


3. 大数据量优化策略



  • 添加查询参数:通过条件筛选减少返回数据量

  • 前端分页:分批加载数据

  • 滚动加载:动态加载数据,减轻初始加载压力。具体参考:电子表格滚动加载


 


4. 减少报表层面计算



  • 减少公式使用,尽量在SQL中处理数据计算;对复杂公式进行优化,加快计算速度。

  • 避免设置单元格过滤:尽量在数据集层面过滤数据


 


二:报表类型选择


5. 清单报表避免使用分组报表



  • 对格式要求不高的清单数据,推荐使用电子表格-清单表或者即席查询类型,而非复杂的分组报表,提升性能。


 


三:性能预加载优化


6. 计划任务预缓存



  • 针对高频使用的重要报表,可设置计划任务(如每天早/中/晚自动打开一次),提前生成缓存,提升用户访问时的响应速度。


 


实战案例分享



  • 案例一:资金收支汇总明细表


某财务报表开发人员使用插件版处理20万+的资金数据,通过优化将响应时间从8分钟降至10秒内。


 


image.png


 


表样要点说明


1、需对每个客户分别计算各个用途金额在总金额的占比


2、冻结列头


 


原设计方案


数据量大约为2万,标红的地方使用了sum公式辅助计算占比,而sum公式单元格会随着前面的单元格向下扩展,导致扩展出上万个sum公式单元格,最终造成打开慢


 


image.png


 


优化要点


1、避免在电子表格中计算,直接在sql中处理好合计值数据


2、添加查询参数,筛选不同维度的用户收支数据,如日期、开户机构等,通过条件筛选减少返回数据量 。


 



  • 案例二:销售数据清单表


某财务报表开发人员使用Web版处理100+列的销售数据,通过优化将响应时间从15秒降至3秒内。


 


image.png


 


表样要点说明


1、销售数据需要以列表清单的展示形式


2、冻结行列


3、对文字过长要求仅显示前19个汉字,后面内容以省略号表示,导出时可显示完整信息


 


原设计方案


1、使用分组报表进行设计,其中sheet1展示缩略数据,【项目清单明细】sheet则是展示完整数据


2、隐藏【项目清单明细】sheet发布到服务器


3、通过宏处理实现浏览时只展示sheet1,导出时删除sheet1并展示被隐藏的【项目清单明细】sheet页。


此设计方案,导致前端渲染压力翻倍。


 


优化要点


1、减少不必要的sheet页



  1. 删除sheet1页,把省略数据和完整数据放在【项目清单明细】sheet页不同的列上

  2. 通过宏处理实现浏览时展示缩略数列并隐藏完整数据列,导出时隐藏缩略数据列并展示完整数据列。参考资料:某些情况下隐藏/展示列


2、 报表类型设置为清单表


3、启用行分页加载(每页500行)


 


image.png


 



  • 案例三:房地产测算套表


某房地产开发项目IT人员使用插件版开发测算套表,比如投资测算、成本测算等模块,用于项目决策和规划。通过优化将响应时间从10分钟降至3分钟内。


 


image.png


 


表样说明


1、整个套表有47个sheet,其中【表3.4-回款计划】有效单元格约76.7w,而【表5.2-支付计划 】约6.5w单元格。其他表格少于3k有效单元格。


2、不同sheet之间存在公式跨sheet页计算


 


优化要点


1、删除【9-1酒店收入】等多个sheet的空白行列,避免前端渲染大量空白单元格


 


image.png


 


2、计划任务提前缓存报表


2.1 创建资源离线任务,离线【xxx房地产_测算套表】资源到服务器


 


image.png


image.png


 


2.2 创建计划,定时执行离线任务,提前缓存报表


 


image.png


 


终极总结:


朋友们,经过这场"变形记",你的表格终于可以告别龟速,重获青春活力啦!记住这些神奇口诀:


精简结构:拆分多Sheet报表,避免空白行列浪费空间


选对类型:清单数据用即席查询或者电子表格-清单表,分组报表慎用


减少负载:参数筛选、分页/滚动加载,大数据不再卡顿


提前缓存:高频报表定时预加载,访问更流畅


优化报表,效率翻倍!


 


【有奖互动】亲爱的数据达人们,我们诚挚邀请您分享提升电子表格性能的技巧,精彩回复将获得惊喜麦豆奖励!

发表于 2025-6-11 11:14:14
赞一个~~~

回复

使用道具 举报

发表于 2025-6-11 15:02:33
打 call~

回复

使用道具 举报

发表于 2025-6-11 15:09:08
删除多余空白行列小技巧,亲测好用!~
比如D列开始后面都要清空,那就选中D列,快捷键按住Ctrl+shift+→,会全选D列右侧所有列,再右键删除;

行的也一样,比如10行后面都不要,选中10行,快捷键按住Ctrl+shift+↓,会全选10行下面所有的行,再右键删除

不谢  
打赏人数1麦豆 +20 收起 理由
麦本麦 + 20 棒!这也是个很好的方案!

查看全部打赏

回复

使用道具 举报

发表于 2025-6-13 11:43:37
如果我要根据参数控制查询结果,查询出来后,还需要在当前页面对结果进行回写,回写涉及上传文件。

如果要上传文件,只能绑定实体表字段,而使用参数只能通过数据集,
同一页面要使用两个数据表,只能使用分组报表,两个数据表要进行关联,只能使用单元格过滤。
数据量也不少,太吃性能了,怎么解决啊
  •   麦本麦
    一般来说回写上传文件是不建议大数据量的,这个目前来说确实没有比较好的解决方案,您上传文件的使用场景是怎么样的,可以看看有没有其他解决方案。
    2025-6-16 15:00| 回复

回复

使用道具 举报

发表于 2025-6-20 11:01:17

赞一个~~~
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

8回帖数 0关注人数 1425浏览人数
最后回复于:2025-6-20 11:01
快速回复 返回顶部 返回列表