离线状态下如何在Execl中实现数据修改后的高亮显示?
Execl中实现数据修改后的高亮显示
- 1 问题描述
- 2 解决思路
- 2.1 保存操作记录
- 2.2 手动保存原记录后进行匹配
- 3 解决方法
- 3.1跟踪更改
- 3.2 条件格式
- 3.3 重复项匹配
- 3.4 设置允许编辑区域
- 4 总结
1 问题描述
Excel表格中经常遇到多人编辑同一文件的情况,人数较少的情况下可能会选择发送离线文件修改后再返回,人数较多时则常用共享在线文档编辑,如腾讯在线文档等。但无论是哪一种情况,都存在一个问题,即除主用户之外的其他人误改不在权限内的数据,主用户将无法跟踪被修改数据的具体情况。
目前共享在线文档通常有版本记录功能,类似于git的版本退回功能,但毕竟应用场景不同,功能相差甚远。
下面使用一个具体案例来说明:
现需核对某校学生疫苗类型接种情况,除基本信息外最重要的是疫苗类型信息。采用离线文件的形式发给学生填写,若学生修改疫苗类型,该数据需以高亮显示。
2 解决思路
在实际情况中,交给学生“填写”或“审核”其实差距很大,如果是“填写”则涉及修改数据较多,“审核”涉及修改数据较少,思路有所不同。所以该场景下的具体要求并不详细,下面仅以“审核”作为主要需求。
2.1 保存操作记录
保存操作记录是最直接的方法,因为我们可以直观的看到修改的用户、时间、位置、内容,并进行判断。我试图去猜测它的底层逻辑框架,有些超出能力范畴。这种保存操作记录的功能如果存在,应该是集成好的,否则如果由用户直接去组合函数实现比较复杂,甚至难以实现。
2.2 手动保存原记录后进行匹配
如果你足够熟悉或聪明,可能会找到一个现有的函数直接解决问题。退一步讲,也可以先保留原值再函数匹配,但终归是优于肉眼观察的。
3 解决方法
3.1跟踪更改
excel是图形化用户界面(GUI),选项卡内的操作本质上都是集成的函数(后边都叫功能),是在开发时提前设计的功能,出于对excel浅薄的认知,我以为它并没有设计版本控制方面的功能,可能需要借助宏命令自定义一些函数来实现操作记录的保存。但百度后,才惊觉excel功能之强大,只是很多并没有机会用到,也难以想到。下面简述一下跟踪修订功能实现高亮显示(以Excel2019为例)
- 选择“审阅”——>“保护”——>“跟踪更改”,如没有“跟踪更改”继续看第2条,否则跳至第3条。
- 如果没有“跟踪更改”功能,查看该文章《Excel中原来可以显示出数据修改记录,审阅修订隐藏的好深!》,原文中的“保护”选项卡组可不删除,直接添加新选项卡组。
- .点击“跟踪更改”,选择“突出显示修订”,选中“编辑时跟踪修订信息…”、“时间”、“修订人”选项。
!
- 完成后修改数据,该数据自动高亮显示,移动鼠标至单元格,显示详细信息(修改用户,时间,改动内容和位置)
3.2 条件格式
采用条件格式来完成同样能达成高亮显示的结果,但是操作繁琐,应用场景受限,对于在原表数据上增加多行信息,比较棘手,且无法记录修改详情,但对于行数确定,仅对某几列进行修改的场景是可行的。
- 首先复制“疫苗类型”列在sheet2中,并使用保护工作表功能,设置密码后确认。以保证原始数据不会被改动。
- 在sheet1中“疫苗类型”后新增字段“是否变动”,值为
=IF(Sheet2!A2=B2,"否","是")
,用于判断sheet2中原始数据是否与sheet1中审核数据是否相同。设置完成后可隐藏该列,方便查看且可避免被手动修改。
- 根据“是否改动”列的记录情况,对“疫苗类型”列设置条件格式。如图选中“疫苗类型”列,依次选择“突出显示单元格规则”——>“其他规则”——>“”使用公式确定要设置格式的单元格”。公式为
=INDIRECT(ADDRESS(ROW(),COLUMN()+1))="是"
,“格式”设置为黄色背景,该公式是定位相邻列(是否改动列)单元格数据是否为“是”,即原始数据有改动。
- 修改“疫苗类型”列数据后该单元格即高亮显示。
3.3 重复项匹配
3.4 设置允许编辑区域
4 总结
离线状态下如何在Execl中实现数据修改后的高亮显示?相关推荐
- mysql 查看索引命中_请问下如何在Mysql中where与orderBy后在命中索引?
我现在大概有一个需求,是需要在数据库中查询一个列表.数据表的样子大概是这样的: A B C D E 1 1 1 2016-08-05 40 ... ... ... ... ... 而我现在的SQL语句 ...
- 离线状态下IDEA导入Maven依赖爆红解决
hello,你好呀,我是灰小猿,一个超会写bug的程序猿! 一杯茶,一包烟,一个bug写一天! 平常在企业中进行项目开发的时候大部分都是在内网环境或者离线状态下进行的,这样就导致了使用Maven项目导 ...
- 如何在execl中制作列与列错开的表格?
案例: 使用过word的都知道,在word中制作表格可以直接通过拖曳单元格的某一个行与列实现列与列的错位.但在execl中,这种方法是行不通的,那么如何在execl中实现这种单元格的列与列的错位呢? ...
- [Phonegap+Sencha Touch][转] 移动开发32 使sencha touch的store在离线状态下也能显示数据
原文地址:http://blog.csdn.net/lovelyelfpop/article/details/39960843 英文原文:<Using .Net MVC and Sencha T ...
- idea在离线状态下使用maven导入本地仓库
针对idea在离线状态下使用maven导入本地仓库的问题 当idea处于离线状态下,例如没有互联网,或者从事保密性质开发,电脑设备不允许联网,如何通过导入拷贝的maven本地仓库进行开发. (今天查了 ...
- 面试官问我:如何在 Python 中解析和修改 XML
摘要:我们经常需要解析用不同语言编写的数据.Python提供了许多库来解析或拆分用其他语言编写的数据.在此 Python XML 解析器教程中,您将学习如何使用 Python 解析 XML. 本文分享 ...
- 如何在 Vue 中导出数据至 Excel 表格 - 卡拉云
本文首发:<如何在 Vue 中导出数据至 Excel 表格 - 卡拉云> 我们经常需要在 Vue 搭建的后台管理系统里导出数据到 Excel / CSV ,方便我们将数据共享给其他同学或在 ...
- Python数据分析小技巧:如何在Pandas中实现数据透视表?
Python数据分析小技巧:如何在Pandas中实现数据透视表? 数据透视表是数据分析中非常有用的工具,可以帮助我们快速了解数据的结构.关联和趋势.在Pandas中,我们可以使用pivot_table ...
- 堆栈(Strack)是指这样一段内存,它可以理解为一个筒结构,先放进筒中的数据被后放进筒中的数据“压住”,只有后放进筒中的数据都取出后,先放进去的数据才能被取出,称为“后进先出”。堆栈的长度可随意增加
堆栈(Strack)是指这样一段内存,它可以理解为一个筒结构,先放进筒中的数据被后放进筒中的数据"压住",只有后放进筒中的数据都取出后,先放进去的数据才能被取出,称为"后 ...
最新文章
- php。defined,PHP defined()函数的使用图文详解
- ros2_object_analytics安装过程全记录
- 有一个工程师男(女)朋友是什么样的体验?
- DropBox 超实用的免费文件网络同步、备份、分享工具
- mysql 1064 oython_Python mysql错误#1064
- Linux下OneinStack一键安装JAVA+PHP+Tomcat+Nginx+MySQL网站环境
- 2数据库表空间容量查询_Zabbix监控达梦数据库表空间
- 16进制字符串转字节数组
- 2016年小升初海淀区全部初中排名分析
- 补发 四人小组 组队简单说明
- linux vi编辑器常用命令
- RH850 F1L freeRTOS 任务栈的切换
- win7原版镜像_(超详细)WIN7原版系统win镜像安装教程
- django 转发_Django开发常用30个软件包
- Linux补全命令分析,实现Linux下上下键和命令补全
- HIT 软件构造2019春 Lab2
- 2022考研数学 张宇 基础班【配套张宇30讲】【免费分享】
- bzoj2005 NOI2010 方案统计
- 计算机实验室主要工作业绩范文,实验室工作总结
- 利用快慢指针判断循环