簡體   English   中英

Excel-自動將公式單元格替換為其結果

[英]Excel - replace a formula cell with its result automatically

我正在嘗試制作一張表格,添加到我給學生做作業的模板中; 其中一些通過相互發送文件來作弊,我想抓住它們。

我已經創建了一個公式單元格,其中填充了文件的當前操作系統和目錄。 我想做的是在評估后將其轉換為文本,這樣,如果另一個學生打開該文件,該文件將不會更改(但以下單元格將保持不變,依此類推。)這是公式:

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

(單元格A2及更高版本): =IF(A1=(INFO("osversion")&INFO("directory")),"",IF(LEN(A1)<2," ",INFO("osversion")&INFO("directory")))

您是否知道在不使用VBA的情況下是否有任何方法可以將公式單元格替換為其值? (如果我使用VBA,它將詢問您是否要在啟動時啟用宏,從而使游戲消失……)

預先感謝您的幫助!

有一種解決方法:使用修訂。 例如,如果您使用的是Excel 2010:

  1. 轉到“ Review選項卡,然后在“ Changes組中單擊“ Share Workbook
  2. 單擊“ Allow changes by more than one user at the same time進行Allow changes by more than one user at the same time ”復選框。
  3. 在“ Review選項卡中,選擇“ Track Changes|Highlight Changes
  4. 您可能希望為“ When選項選擇“ All ,為“ Who選項選擇“ Everyone Who

然后,您可以選擇突出顯示屏幕上的更改和/或在新工作表中列出更改。

如果在對文件進行最終更改之前執行此操作,則可以通過檢查是否正確顯示了上次更改來確認在上次查看文件與將文件退還給您之間,沒有人Accepted Changes

這樣一來,您就可以查看自上次編輯文件以來所有編輯過文件的人,以及他們進行了哪些更改。

(編輯)

正如@Siddharth Rout在另一個答案中指出的那樣,人們可以使用技術手段使作弊更加困難,但有足夠謀略的學生總是可以找到一種方法來規避此類措施。

可以通過區分以下兩種情況來解決這一困境:

(a)學習機會,學生可以選擇學習(做作業並獲得關於他們的方法的反饋-不是成績)或不選擇學習;以及

(b)評估過程,在該過程中,人們可以衡量所學到的知識(例如,通過將學生聚集在一個屋檐下)。

在(a)情況下,學生沒有得到評估,因此沒有“作弊”的動機。 在情況(b)中,他們正在接受評估,但沒有機會作弊。

您是否知道在不使用VBA的情況是否有任何方法可以將公式單元格替換為其值?

您的問題的答案是“ 不,這無法完成


即使您將VBA視為一種選擇,也沒有用,因為這是XY問題的經典示例。

無論您做什么,都無法阻止學生作弊。 考慮以下幾種情況。

場景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在電話中提供所有答案。 你怎么知道學生乙被騙了?

場景3

學生A和學生B在彼此相鄰的兩台筆記本電腦中打開文件並完成作業。 你怎么知道誰欺騙了誰的任務?

另類?

將所有學生放在一個屋頂下,然后讓他們填滿在您面前。 甚至沒有其他方法可以猜測某人是否作弊,除非某人愚蠢到在他/她的模板中提到其他學生的名字或逐字復制答案。

您總是可以將一些文本放在只有您自己知道的單元格中,並將文本變白。 您可以為每個學生編寫文本代碼,並使用密碼僅鎖定該單元格的內容。

那就是我會做的...

您可以給他們每個人一個不同的問題(對於不同的數據可能是相同的問題)。 您只要看一下結果就可以發現任何一種作弊行為。

編程或IT並非總是解決方案,即使對於編程或IT問題也是如此。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM