Excel – 自动replace公式单元格
我正在试着制作一张表格,将其添加到我的学生作业作业的模板中; 其中有些人是通过发送对方的文件作弊,我想赶上他们。
我做了一个公式单元格,填充当前操作系统和文件的目录。 我想要做的就是在评估之后把这个文本变成文本,这样如果另一个学生打开这个文件,这个文件就不会改变(但是下面的单元格会等等..)这里是公式:
(单元格A1): =INFO("osversion")&INFO("directory")
(单元格A2及以后): =IF(A1=(INFO("osversion")&INFO("directory")),"",IF(LEN(A1)<2," ",INFO("osversion")&INFO("directory")))
你知道是否有任何方法可以在不使用VBA的情况下将公式单元格replace为其值? (如果我使用VBA,它会询问你是否想在启动时启用macros,哪种types的游戏不能运行)
预先感谢您的帮助!
有一个解决方法:使用修订。 如果您使用Excel 2010,例如:
- 转到“
Review
选项卡,然后在“Changes
组中单击“Share Workbook
。 - 点击
Allow changes by more than one user at the same time
的checkbox。 - 在
Review
选项卡中,selectTrack Changes|Highlight Changes
。 - 您可能希望为
Who
选项selectAll
,并为Who
选项selectEveryone
。
然后,您可以select突出显示屏幕上的更改和/或更改新工作表中的列表。
如果您在对文件进行最终更改之前执行此操作,则可以通过检查最后一次更改显示是否正确来确认上次看到文件和返回给您的时间段之间没有人Accepted Changes
。
然后,您可以看到自上次编辑文件以来所有编辑过该文件的人员以及他们所做的更改。
(编辑)
正如@Siddharth Rout在另一个答案中指出的,人们可以使用技术手段使作业的作弊更加困难,但是足够机智的学生总能find一种方法来规避这些措施。
这种困境可以通过区分两种情况来解决:
(a)学习机会,学生可以select学习(做任务,并获得他们的方法的反馈 – 而不是一个标记)或不select学习,
(b)评估过程,在这个过程中,人们可以衡量他们学到了多less东西(例如,让学生聚集在一个屋檐下)。
如果(a)学生没有被评估,所以没有动机“欺骗”。 在(b)情况下,他们正在评估,但没有机会作弊。
你知道是否有任何方法可以在不使用VBA的情况下将公式单元格replace为其值?
你的问题的答案是“ 不,不能做 ”
即使你认为VBA是一个选项,这是徒劳的,因为这是XY问题的典型例子。
不pipe你做什么,你都不能阻止你的学生作弊。 考虑这几个scheme。
情况1
学生A有1.xlsx
。 学生B有2.xlsx
。 学生A完成作业后,创build1.xlsx
的副本。 我们称之为Copy.xlsx
。 现在学生A向学生B提供Copy.xlsx
。学生B打开Copy.xlsx
并将答案复制到2.xlsx
。 一旦完成,学生B删除Copy.xlsx
并给你2.xlsx
。 那么现在告诉我你怎么知道学生B被骗了?
情景2
学生B通过手机拨打学生A. 他们都打开了他们的副本。 学生A给出了电话中的所有答案。 你怎么知道学生B被骗?
情景3
学生A和学生B在两台笔记本电脑旁边打开文件并完成作业。 你怎么知道谁被骗了谁的任务?
另类?
让所有的学生在一个屋檐下,然后让他们填满你的面前。 除此之外,你甚至无法猜测是否有人受骗,除非有人愚蠢地在其模板中提及其他学生的姓名或逐字抄录答案。
你总是可以把一些文本放在只有你知道的单元格位置,并使文本变成白色。 您可以为每个学生编写文本,并使用密码locking该单元格的内容。
那就是我会做的…
你可以给他们每个人一个不同的问题(也许与不同的数据相同的问题)。 只要看结果就可以发现任何types的作弊行为。
编程或IT并不总是解决scheme,甚至是编程或IT问题。