零难度指南:手把手教你如何通过在线Excel实现资产负债表
前言
作为财务分析中的三大报表之一,资产负债表的作用是展示一个企业在特定时间点上的财务状况。今天小编就为大家介绍一下如何使用葡萄城公司的纯前端在线表格控件SpreadJS实现一个资产负债表。
环境准备
SpreadJS在线Excel体验地址:https://demo.grapecity.com.cn/SpreadJS/WebDesigner/index.html
操作步骤
1)填报
先将本地excel模板导入至SpreadJS中。

对于合计类单元格,进行简单公式计算的,并且这里的公式是固定的,并设计好背景颜色。

如果是直接填报,在对应科目年初/期末数单元格直接编辑数据就好。在实际业务中,数据往往是由此前的业务逻辑汇总而来的,所以小编准备了一个数据源表,便于后续取数。
数据源:

- 接下来就是将对应数值填写到科目单元格中了,这里我们可以借助 sumifs 公式。关于sumifs 公式的详细介绍可以点击这里查看。以货币资金为例,如果想获取2021年货币资金科目的金额,可以设置下方公式:

对于填报用户来说,手动选择区域来依次设置公式还是有些繁琐,且如果数据源格式固定,填报用户也无需关注数据区域。所以,可以借助命名信息,进一步将公式简化。
| 命名信息,即可以给一个单元格、区域、函数,常量,表格定义一个别名,后续可以直接通过这个别名进行引用。 |
|---|
添加的命名信息如下:

公式可以修改为如下(制表年份-1 即为期初数据对应财年)。

对于期末数,公式为:=SUMIFS(金额,科目,B5,年份,2)
科目值输入完毕后,合计部分公式就可以自动计算了:

2)权限控制
资产负债表制作完成后,紧接着就进入审批流程了,在数据流转过程中,为了保证数据的完整性和准确性,往往会对编辑权限做一定的限制。比如,审批人只能审阅,无法修改原始数据。原始数据只能由制表者进行修改。这里我们可以结合SpreadJS 表单保护+单元格锁定 功能,实现上述需求。
对于制表者,可以编辑各科目年初数、期末数单元格,因此将其设置为锁定,并开启表单保护。

如果尝试修改其他单元格,则会弹窗提示:

当然,这里的弹窗文本也是可以自定制的,更灵活地满足不同项目的风格需求。具体方式可参考下方的教程:https://gcdn.grapecity.com.cn/showtopic-162002-1-1.html
在流转至审批阶段时,审批单元格编辑权限打开,其他单元格处于只读状态,所以可以将B42:E42单元格设置为未锁定,其余单元格设置为锁定。

同样开启表单保护,使编辑限制生效。对于原始数据表单,审批者其实是不关注的,所以可以将此sheet进行隐藏。SpreadJS提供了深度隐藏功能,使用户无法从UI界面进行取消,从而保证了数据的安全性。
填报工作完成后,紧接着就是需要做打印、导出pdf等业务。
3)打印和导出pdf
在打印时,可以直接使用设计器自带的打印功能,点击打印按钮即可唤起浏览器的打印窗口。如果需要调整布局、边距等,可以通过页面布局按钮进行相应设置。

同样地,设计器也提供了类Excel的导出pdf功能。


总结
以上就是使用SpreadJS实现一个资产负债表的全过程,如果您想了解更多有关于资产负债表的信息,欢迎点击这里查看。
扩展链接:
为什么你的财务报表不出色?推荐你了解这四个设计要点和SpreadJS!
纯前端类 Excel 表格控件在报表勾稽分析领域的应用场景解析
零难度指南:手把手教你如何通过在线Excel实现资产负债表的更多相关文章
- Apache Beam实战指南 | 手把手教你玩转KafkaIO与Flink
https://mp.weixin.qq.com/s?__biz=MzU1NDA4NjU2MA==&mid=2247492538&idx=2&sn=9a2bd9fe2d7fd6 ...
- 零投资!零风险!手把手教你挖pi币
为什么说PI币属于区块链4.0代币呢?我们先从人类社会的生产力生产关系的递进来做一波有利的证明! 原始社会--封建王朝--君主立宪--资本主义--社会主义 原始社会:社会物质财富分配既有弱肉强食也有按 ...
- 【Redis技术探索】「数据迁移实战」手把手教你如何实现在线+离线模式进行迁移Redis数据实战指南(在线同步数据)
从实战出发使用RedisShake进行Redis数据在线+离线模式迁移指南 RedisShake基本介绍 RedisShake是基于redis-port基础上进行改进的是一款开源的Redis迁移工具, ...
- Apache Beam实战指南 | 手把手教你玩转大数据存储HdfsIO
https://mp.weixin.qq.com/s?__biz=MzU1NDA4NjU2MA==&mid=2247494843&idx=2&sn=0dd20caec76e25 ...
- 【Redis 技术探索】「数据迁移实战」手把手教你如何实现在线 + 离线模式进行迁移Redis数据实战指南(离线同步数据)
离线迁移 与在线迁移相比,离线迁移适宜于源实例与目标实例的网络无法连通的场景,或者源端实例部署在其他云厂商Redis服务中,无法实现在线迁移. 存在的问题 由于生产环境的各种原因,我们需要对现有服务器 ...
- 手把手教你使用 Java 在线生成 pdf 文档
一.介绍 在实际的业务开发的时候,研发人员往往会碰到很多这样的一些场景,需要提供相关的电子凭证信息给用户,例如网银/支付宝/微信购物支付的电子发票.订单的库存打印单.各种电子签署合同等等,以方便用户查 ...
- 手把手教你从零写一个简单的 VUE
本系列是一个教程,下面贴下目录~1.手把手教你从零写一个简单的 VUE2.手把手教你从零写一个简单的 VUE--模板篇 今天给大家带来的是实现一个简单的类似 VUE 一样的前端框架,VUE 框架现在应 ...
- 手把手教你从零写一个简单的 VUE--模板篇
教程目录1.手把手教你从零写一个简单的 VUE2.手把手教你从零写一个简单的 VUE--模板篇 Hello,我又回来了,上一次的文章教会了大家如何书写一个简单 VUE,里面实现了VUE 的数据驱动视图 ...
- [原创]手把手教你写网络爬虫(7):URL去重
手把手教你写网络爬虫(7) 作者:拓海 摘要:从零开始写爬虫,初学者的速成指南! 封面: 本期我们来聊聊URL去重那些事儿.以前我们曾使用Python的字典来保存抓取过的URL,目的是将重复抓取的UR ...
- 自已开发IM有那么难吗?手把手教你自撸一个Andriod版简易IM (有源码)
本文由作者FreddyChen原创分享,为了更好的体现文章价值,引用时有少许改动,感谢原作者. 1.写在前面 一直想写一篇关于im即时通讯分享的文章,无奈工作太忙,很难抽出时间.今天终于从公司离职了, ...
随机推荐
- [转帖]CentOS7使用Chrony实现时间同步
学习安装部署 ceph 时 ,在添加 mon 时报错了,搜索原因后发现是 时间同步问题.于是学习一下时间同步工具. 一般CentOS6 使用的时间同步工具是ntp.现在还有不少开源软件文档建议安装的时 ...
- [转帖]Sysbench - 一种系统性能benchmark
SysBench是一款开源的.跨平台的.模块化的.多线程的性能测试工具,通过高负载地运行在数据库上,可以执行CPU/内存/线程/IO/数据库等方面的性能测试.用于评估操作系统的性能参数. 1 sysb ...
- [转帖]Windows版本vcenter server6.0的SSO密码重置
Windows版本的SSO重置与vCenter Server Appliance的重置类似 登录vcenter服务器,打开DOS窗口,输入 cd c:\Program Files\VMware\vCe ...
- [转帖]Linux性能分析:理解系统平均负载
Linux系统中,平均负载是指单位时间内,处于可运行状态和不可中断状态的进程数.它不仅包括了正在使用CPU的进程,也包括处于不可打断的睡眠状态的进程-它们是在等待其它系统资源如磁盘 I/O 等的进程. ...
- 文心一言 VS 讯飞星火 VS chatgpt (186)-- 算法导论14.1 3题
三.用go语言,写出OS-SELECT的非递归版本. 文心一言: 下面是使用Go语言编写的OS-SELECT的非递归版本: func OS_SELECT(T *Node, k int) *Node { ...
- C#开源免费的开发效率提升利器:DevToys开发人员的瑞士军刀!
前言 今天分享一款基于C#开源(MIT License开源协议).免费.离线.功能齐全的Windows开发者工具箱,号称开发人员的瑞士军刀,可以帮助开发者完成日常工作开发中常用功能:DevToys. ...
- 【K哥爬虫普法】不要沾边!涉案 7k 合判 6 年!
我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K 哥特设了"K哥爬虫普法"专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识, ...
- Go 泛型发展史与基本介绍
Go 泛型发展史与基本介绍 Go 1.18版本增加了对泛型的支持,泛型也是自 Go 语言开源以来所做的最大改变. 目录 Go 泛型发展史与基本介绍 一.为什么要加入泛型? 二.什么是泛型 三.泛型的来 ...
- GitHub要求2FA?不慌,有它们帮你
近日,GitHub宣布,到 2023 年底,所有用户都必须要启用双因素身份验证 (2FA),不能只用密码啦. 正如GitHub的首席安全官Mike Hanley所指出的那样,保护开发者账号是确保软件供 ...
- 在bat中切换盘符
在bat代码中如何在不同的盘符中切换?直接输入盘符的名字,前面不要加cd,示例 cd %~dp0 d: cd D:\Python37 e: cd E:\Code\KSFramework c: cd C ...