实用Excel技巧分享:怎么实现单元格局部加密

wufei123 2024-05-24 阅读:13 评论:0
在之前的文章《实用excel技巧分享:制作高效的搜索式下拉菜单》中,我们了解了制作高效搜索式下拉菜单的方法。今天我们来聊聊excel单元格局部加密,输入密码后才显示指定内容的方法。真是没想到,单元格竟然还可以设置密码呢! 输入密码才显示单...

在之前的文章《实用excel技巧分享:制作高效的搜索式下拉菜单》中,我们了解了制作高效搜索式下拉菜单的方法。今天我们来聊聊excel单元格局部加密,输入密码后才显示指定内容的方法。真是没想到,单元格竟然还可以设置密码呢!

实用Excel技巧分享:怎么实现单元格局部加密

输入密码才显示单元格内容,有没有一种非常高大上的感觉?不想别人一眼就看到所有内容,但是又不能对工作簿加密的时候,可以试试这种方法。例如需要对工资的具体数据进行加密,每个部门只有输入自己部门的密码才能看到,效果如图所示:

1.gif

下面就看看如何实现这种神奇的效果吧。

一、初步加密

就是这样一张普通的表格,我们选择要加密的区域,按快捷键ctrl+1,在“设置单元格格式”对话框中点击“自定义”,在“类型”下输入“输入密码查看”:

2.png

点击“确定”后,原有的数字就看不到了:

3.png

这里其实是利用了自定义格式的障眼法(自定义格式中设置格式往往只是给单元格数据穿上一层外衣),表面上看到的是“输入密码查看”,实际上在编辑栏看到的还是具体数字。如果要编辑栏也看不到的话,还要做一点工作。

二、深度加密

第1步:在d列输入公式="="&C2,下拉;

4.png

第2步:复制d列内容,选择性粘贴为数值到c列(若直接粘贴,前面设置的自定义格式就没有了);

5.png

第3步:选择c列,点击分列,直接点击完成即可,这时单元格中的内容又变成了原来的“输入密码查看”字样(相当于每个单元格双击了一次,可将数值变为公式,因为保护工作表中只有公式可以隐藏,所以需要将原先的数据变为公式),分列完成后删除d列内容,进行下一步设置;

6.png

第4步:Ctrl+a全选表格,打开单元格格式设置,将“保护”中“锁定”前的勾去掉(excel中默认所有单元格都是锁定的,点击保护工作表后,锁定的单元格都不能被修改,所以要去掉勾选“锁定”),“隐藏”前打勾(勾选“隐藏”后,启动保护工作表后公式都会被隐藏),点击确定;

7.png

第5步:删除d列内容,打开保护工作表,输入密码,将下面允许的操作全部打钩选定后点击确定;

8.png

此时表格的任何操作都不受影响,只是编辑栏看不到工资的数据了。

9.png

原理解释:因为c列原来是数字,通过d列在数字前加了=号,复制回c列后再用分列将数据变成公式(Excel中公式的定义为=号开头的表达式,直接=一个数字也是公式)。最后利用了工作表保护功能隐藏公式,这样在编辑栏就看不到数据了。其实这里用到了好几个非常好的技巧,希望小伙伴能能够灵活运用。

前面的操作涉及到一些保护工作表的知识,不了解的伙伴可以查看之前的教程:《excel有把隐形的保护锁,你知道吗?》(点击可查看)

到这一步,我们已经实现了数据隐藏的效果,接下来就是要根据密码来显示对应的数据。

三、按部门密码显示数据

需要说明一下,为了便于演示,密码列表就在数据表的边上列出了,实际应用中可以将密码列表单独放在一个sheet中,对这个sheet进行隐藏加密处理。

假设我们为每个部门预设好密码:

10.jpg

以企划部为例进行说明如何添加密码。

第1步:选择企划部所在的工资区域,打开条件格式-新建规则:

11.png

第2步:使用公式确定格式,公式为=$E$2=123,这个公式的输入方法为:输入第一个等号后鼠标点击E2单元格,再输入=123,然后点击格式进行设置;

12.png

第3步:设置格式为常规;

13.png

点击两次确定完成设置,可以看看效果了,在密码处输入123,企划部的工资就出现了:

14.png

使用同样的方法对其他部门进行设置。

可能有的朋友会发现一个问题,这种方法只能是相同的部门都连续出现的时候才行,而且要设置多次,有没有一个方法,能够适用于更广泛的情况呢?答案是肯定的,这就需要一个我们非常熟悉的函数vlookup来帮忙了,来看看具体操作步骤。

四、终极设置方法

首先清除之前设置的规则:

15.png

然后我们按工资进行排序,打乱部门的顺序(在拖动鼠标选择区域的时候,先选中C列再往左拉,因为直接右键单击点排序的话,excel默认按照选择的第一列进行排序);

16.png

为了操作顺利进行,先撤销工作表保护;

17.jpg

好了,接下来选择工资所在的区域,设置条件格式,使用公式

=$E$2= VLOOKUP(A2,$H$2:$I$6,2,0)确定格式:

18.png

前面是E2=具体的密码,这里是E2=vlookup的结果,进一步将格式设置为常规后再看看效果:

19.png

可以换一个密码试试效果:

20.png

至此一个可以按条件设置密码的表格就完成了,是不是很有成就感呢?

让我们来总结一下今天学到的知识点:

1、自定义格式的运用;

2、将数值变成公式的方法;

3、隐藏公式的方法;

4、条件格式中运用公式的方法。

都是很简单的功能,但是组合起来就会达到奇妙的效果,所以Excel一定要活学活用才能最大程度的发挥这个工具的强大威力。

相关学习推荐:excel教程

以上就是实用Excel技巧分享:怎么实现单元格局部加密的详细内容,更多请关注知识资源分享宝库其它相关文章!

版权声明

本站内容来源于互联网搬运,
仅限用于小范围内传播学习,请在下载后24小时内删除,
如果有侵权内容、不妥之处,请第一时间联系我们删除。敬请谅解!
E-mail:dpw1001@163.com

分享:

扫一扫在手机阅读、分享本文

发表评论
热门文章
  • 华为 Mate 70 性能重回第一梯队 iPhone 16 最后一块遮羞布被掀

    华为 Mate 70 性能重回第一梯队 iPhone 16 最后一块遮羞布被掀
    华为 mate 70 或将首发麒麟新款处理器,并将此前有博主爆料其性能跑分将突破110万,这意味着 mate 70 性能将重新夺回第一梯队。也因此,苹果 iphone 16 唯一能有一战之力的性能,也要被 mate 70 拉近不少了。 据悉,华为 Mate 70 性能会大幅提升,并且销量相比 Mate 60 预计增长40% - 50%,且备货充足。如果 iPhone 16 发售日期与 Mate 70 重合,销量很可能被瞬间抢购。 不过,iPhone 16 还有一个阵地暂时难...
  • 酷凛 ID-COOLING 推出霜界 240/360 一体水冷散热器,239/279 元

    酷凛 ID-COOLING 推出霜界 240/360 一体水冷散热器,239/279 元
    本站 5 月 16 日消息,酷凛 id-cooling 近日推出霜界 240/360 一体式水冷散热器,采用黑色无光低调设计,分别定价 239/279 元。 本站整理霜界 240/360 散热器规格如下: 酷凛宣称这两款水冷散热器搭载“自研新 V7 水泵”,采用三相六极马达和改进的铜底方案,缩短了水流路径,相较上代水泵进一步提升解热能力。 霜界 240/360 散热器的水泵为定速 2800 RPM 设计,噪声 28db (A)。 两款一体式水冷散热器采用 27mm 厚冷排,...
  • 惠普新款战 99 笔记本 5 月 20 日开售:酷睿 Ultra / 锐龙 8040,4999 元起

    惠普新款战 99 笔记本 5 月 20 日开售:酷睿 Ultra / 锐龙 8040,4999 元起
    本站 5 月 14 日消息,继上线官网后,新款惠普战 99 商用笔记本现已上架,搭载酷睿 ultra / 锐龙 8040处理器,最高可选英伟达rtx 3000 ada 独立显卡,售价 4999 元起。 战 99 锐龙版 R7-8845HS / 16GB / 1TB:4999 元 R7-8845HS / 32GB / 1TB:5299 元 R7-8845HS / RTX 4050 / 32GB / 1TB:7299 元 R7 Pro-8845HS / RTX 2000 Ada...
  • python中def什么意思

    python中def什么意思
    python 中,def 关键字用于定义函数,这些函数是代码块,执行特定任务。函数语法为 def (参数列表)。函数可以通过其名字和圆括号调用。函数可以接受参数作为输入,并在函数体中使用参数名访问。函数可以使用 return 语句返回一个值,它将成为函数调用的结果。 Python 中 def 关键字 在 Python 中,def 关键字用于定义函数。函数是代码块,旨在执行特定任务。 语法 def 函数定义的语法如下: def (参数列表): # 函数体 示例 定义...
  • python中int函数的用法

    python中int函数的用法
    int() 函数将值转换为整数,支持多种类型(字符串、字节、浮点数),默认进制为 10。可以指定进制数范围在 2-36。int() 返回 int 类型的转换结果,丢弃小数点。例如,将字符串 "42" 转换为整数为 42,将浮点数 3.14 转换为整数为 3。 Python 中的 int() 函数 int() 函数用于将各种类型的值转换为整数。它接受任何可以解释为整数的值作为输入,包括字符串、字节、浮点数和十六进制表示。 用法 int(object, base=10) 其中...