2

我正在尝试制作一张表格以添加到我给学生的家庭作业模板中;他们中的一些人通过互相发送文件来作弊,我想抓住他们。

我制作了一个公式单元格,其中填充了当前操作系统和文件目录。我想做的是在评估后让它变成文本,这样如果另一个学生打开文件,它就不会改变(但下面的单元格会改变,依此类推。)这是公式:

(单元格 A1): =INFO("osversion")&INFO("directory")

(单元格 A2 及以后): =IF(A1=(INFO("osversion")&INFO("directory")),"",IF(LEN(A1)<2," ",INFO("osversion")&INFO("directory")))

您知道是否有任何方法可以在不使用 VBA 的情况下在执行后将公式单元格替换为其值?(如果我使用 VBA,它会询问您是否要在启动时启用宏,这会导致游戏消失……)

预先感谢您的帮助!

4

4 回答 4

2

有一种解决方法:使用跟踪更改。如果您使用的是 Excel 2010,例如:

  1. 转到Review选项卡并在Changes组中单击Share Workbook
  2. 单击 的复选框Allow changes by more than one user at the same time
  3. Review选项卡中,选择Track Changes|Highlight Changes
  4. 您可能希望选择All选项WhenEveryone选项Who

然后,您可以选择在屏幕上突出显示更改和/或在新工作表中列出更改。

如果您在对文件进行最终更改之前这样做,您可以Accepted Changes通过检查您的最后更改是否正确显示来确认在您上次查看文件和返回给您的时间之间没有人拥有。

然后,您可以查看自上次编辑文件以来编辑过文件的所有人员,以及他们所做的更改。

(编辑)

正如@Siddharth Rout 在另一个答案中指出的那样,人们可以使用技术手段使作业作弊变得更加困难,但足智多谋的学生总能找到一种方法来规避此类措施。

这种困境可以通过区分两种情况来解决:

(a) 学生可以选择学习(完成作业并获得关于他们的方法的反馈——不是分数)或不选择学习的学习机会,以及

(b) 评估过程,人们可以衡量他们学到了多少(例如,将学生聚集在一个屋檐下)。

如果 (a) 学生没有被评估,因此没有动机“作弊”。在情况(b)中,他们正在接受评估,但没有机会作弊。

于 2013-10-15T19:58:39.910 回答
1

您知道是否有任何方法可以在不使用 VBA的情况下在执行后将公式单元格替换为其值?

您的问题的答案是“不,不能这样做


即使您将 VBA 视为一种选择,它也是徒劳的,因为这是XY Problem的经典示例。

无论你做什么,你都无法阻止你的学生作弊。考虑这几个场景。

方案 1

学生 A 有1.xlsx。学生 B 有2.xlsx。学生 A 完成作业后,他/她创建1.xlsx. 让我们称之为Copy.xlsx。现在学生 A 给Copy.xlsx学生 B。学生 B 打开Copy.xlsx并将答案复制到2.xlsx. 完成后,学生 B 删除Copy.xlsx并给您2.xlsx。那么现在告诉我你怎么知道学生 B 被骗了?

方案 2

学生 B 用手机给学生 A 打电话。他们都打开了副本。学生 A 在电话中给出了所有答案。你怎么知道学生 B 被骗了?

方案 3

学生 A 和学生 B 在相邻的两台笔记本电脑中打开文件并完成作业。你怎么知道谁作弊了谁的作业?

选择?

把所有的学生都集中在一个屋檐下,然后让他们在你面前填满它。除非有人傻到在他/她的模板中提到其他学生的名字或逐字复制答案,否则您甚至无法猜测是否有人作弊。

于 2013-10-15T21:47:07.143 回答
0

您始终可以将一些文本放在只有您知道的单元格位置并将文本设为白色。您可以为每个学生编写文本,并使用密码仅锁定该单元格的内容。

这就是我会做的...

于 2013-10-15T19:55:16.023 回答
0

您可以给他们每个人一个不同的问题(可能是不同数据的相同问题)。只需查看结果,您就可以发现任何形式的作弊行为。

编程或 IT 并不总是解决方案,即使是编程或 IT 问题也是如此。

于 2013-10-15T21:24:23.340 回答