想象一下以下 Excel 表:
B6
是=ZÄHLENWENN(A3:C4;"<>")
(COUNTIF
我认为是英文中的),所以它计算的是坐在教室里的学生人数。老师可以插入他们的名字,A3:C4
然后公式就会计算。我还设置了一种格式,将没有被占用的座位涂成灰色。
我想让老师编辑名称,但不编辑公式,所以我解锁后锁定了工作表A3:C4
。
但是,如果奥利弗想坐在维雷娜旁边怎么办?当老师移动她的单元格时,他会破坏格式,尽管他不应该这样做!有时,依赖于被移动单元格的公式也会被弄乱。
那么,如何防止用户破坏格式和公式?
编辑对于@Rajesh S:
想象一下,老师的桌子位于教室中间,我们想知道哪个学生坐在旁边。在 中输入的公式B7
将是=WENN(B3="";"—";B3)
(如果B3
是""
,则返回"—"
,否则返回B3
)。当 Olive 坐在 时B3
,公式返回Olive
。如果老师将 Olive 移到C4
,公式仍然返回Olive
。
编辑对于@RajeshS 和明晰:
我不是在谈论编辑单元格的值。当我说移动, 我是说点击 Olive,将其拖到空座位上并放在那里。
编辑对于@RajeshS:
这是我为获得您提出的解决方案所做的事情:
- 新的 Excel 工作表
- 转到单元格 A66
- 科尔斯潘 A66:C66
- 输入文本
Desk position (row)
- 转到单元格 A68
- 条件格式
=ISTLEER(A68)
(=$A$68:$C$69
填充颜色) - 转到单元格 A71
- 输入文本
Total students
- 转到单元格 B71
- 输入文本
=ZÄHLENWENN(A68:C69;"<>"&"")
- 转到单元格 A73
- 科尔斯潘 A73:C73
- 输入文本
Students position
- 在 A74、B74 和 C74 中输入文本
Name
,Original
和Current
- 在 A75、A76、A77、A78、A79 中输入文本
Adam
、Olive
、Claus
和Bertram
Verena
- 在 B75、B76、B77、B78、B79、B80 中输入文本
1
、2
、3
、4
和5
6
- 转到单元格 C75
- 输入公式并使用 Shift+Enter
=KKLEINSTE(WENN($A75=$A$68:$C$69; ZEILE($A$68:$C$69)-ZEILE($A$68)+1); ZEILE($1:$1))
创建{}
- 将配方放大至C80
- 在彩色区域中输入学生姓名
- 编辑A66:C66的格式(取消勾选锁定标志)
- 应用工作表锁定(取消选中所有权限,但选择未锁定的单元格)
- 老师找到桌子的方式如下:就像你第一张截图中的那样
- 他点击了 Olive 并把她拖进了 C69
- C75 中的列现在具有值 1, 2, 1, 2, 2, 1,如第二张屏幕截图所示,但 B68 是不是用条件格式中定义的颜色填充。如果他有删除她从原来的座位上下来,重新输入把她放进新的那个,它就会起作用。而且正是这就是问题:用户可以通过移动单元格来修改工作表中不应修改的部分。
答案1
现在我向您推荐一个相对更好的解决方案。请查看下面的屏幕截图。
原座位:
维雷娜 (Verena) 旁边的改良型橄榄座椅:
现在如何实现这一切呢?
- 将此公式写入 Count Student,=COUNTIF(A68:C69,"<>"&"")
- 选择原始座位(数据范围,A68:C69)。
- 应用条件格式,使用此公式,=ISBLANK(A68)。
像我一样绘制数据,并将此公式写入C75(红细胞),拖到最后。
{=SMALL(如果($A75=$A$68:$C$69,则行($A$68:$C$69)-行($A$68)+1),行($1:$1))}
注意:
它是CSE 公式所以结束Ctrl+Shift+Enter。
您有 6 个座位(单元格),最后一个座位(单元格)为空白。只需检查学生位置,在 Verena 之后,单元格留空,其座位为 6,行号为 2,当您将 Olive 移到 Verena 旁边时,Olive 的行号也会发生变化。
对于所有 3 个公式,根据需要更改数据范围。
希望这对你有帮助。