返回列表 上一主題 發帖

[發問] EXCEL設定某日期到檔案無法開啟

謝謝樓上大大,可是我用了之後,開啟檔案出現:
我點 "是"跟"否"檔案可以關閉沒錯,但是我點"取消",就不會自動關閉,而且還可以使用巨集!! 怎麼辦!?


Private Sub Workbook_Open()
    Dim MyDate As Date
    MyDate = #4/4/2015#
    If Date >= MyDate Then Application.Quit
End Sub
小雨

TOP

回復 21# hueywen_jia

ThisWorkbook模組的程式碼
  1. Option Explicit
  2. Private Sub Workbook_BeforeClose(Cancel As Boolean) '活頁簿的預設事件程序(關閉檔案時自動執行)
  3.     Me.Save
  4. End Sub
複製代碼
活頁簿模組的預設事件還有許多,可練習看看
工作表模組一樣有許多的預設事件


感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

謝謝樓上大大,可是我用了之後,開啟檔案出現:
我點 "是"跟"否"檔案可以關閉沒錯,但是我點"取消",就不會自動 ...
hueywen_jia 發表於 2015-4-9 20:46

底下這個方式即使檔案設成唯讀, 也照樣能關閉檔案:
  1. Private Sub Workbook_Open()
  2.     Dim MyDate As Date
  3.    
  4.     MyDate = #4/4/2015#
  5.     If Date >= MyDate Then
  6.       With Application
  7.         .DisplayAlerts = False
  8.         .Quit
  9.       End With
  10.     End If
  11. End Sub
複製代碼

TOP

要指定某日後巨集無法使用,也可以改變驗證方式。
指定日期,如上面前輩所寫的,
IF DATE > "日期" THEN
關閉活頁簿
END IF

改變驗證方式,可以配合GOOGLE  試算表。(可設定不顯示網頁)
活頁簿打開,自動打開網頁,進入GOOGLE 試算表,去抓指定欄位的值,如果值跟你事先輸入VBA的值相同,就繼續。如果值不相同,就強制關閉活頁簿。

這方式比較具有彈性。

TOP

感謝luhpro,雖然你的設定是可成功,但是像我這麼小聰明的還是有法破解,我相信應該還是有人可以破解,只要把電腦時間改在我設定的日期前,還是可以開啟~~這點好像很難讓它不成功厚.......
所以我也很頭痛!!
小雨

TOP

本帖最後由 luhpro 於 2015-4-13 00:18 編輯
感謝luhpro,雖然你的設定是可成功,但是像我這麼小聰明的還是有法破解,我相信應該還是有人可以破解,只要把電 ...
hueywen_jia 發表於 2015-4-12 22:42

其實不論是怎樣的保護都有可能被破解.

最簡單的方法是取得檔案後,
先製作其備份,
接著就是矛與盾的問題囉.

我也曾想過日期到了時直接刪除自身檔案,
不過只要依上述先執行過,
遇到不能用時先改日期後再Copy回去照樣能繼續使用,
除非檔案內資料與目前日期有正相關,
日期不對結果就不具參考價值,
當然那又是另一種破解方式了.

或者寫參考值到登錄檔執行時立即作比對,
寫參考值到另一個加密檔案裡...等等,
當然...還是本篇開頭那句話...

後續再補充:
或者若確認電腦開啟檔案時一定會上網,
那麼日期直接跟國家時間與頻率標準實驗室抓,
這樣改電腦本身日期的破解方式就沒有用了.

TOP

那麼請問luhpro大大~~
您可會寫日期一到就直接刪除該檔呢? 這個不錯!! 因為不會有人想到,就算改回日期,檔案還是沒得救了!!  謝謝
小雨

TOP

那麼請問luhpro大大~~
您可會寫日期一到就直接刪除該檔呢? 這個不錯!! 因為不會有人想到,就算改回日期,檔案 ...
hueywen_jia 發表於 2015-4-15 23:42

網路上找到的:
刪除巨集所在的活頁簿

TOP

回復 28# luhpro

下列巨集會先將檔案本身改以唯讀的方式開啟,再刪除原來的檔案,然後關閉唯讀檔。

可用於限制檔案的使用期限,期限一到就刪除檔案。

可是我要在哪設定日期呢?  看不懂,因為我不懂巨集中的公式

Sub 刪除自己()
    ThisWorkbook.Saved = True
    ThisWorkbook.ChangeFileAccess Mode:=xlReadOnly
    Kill ThisWorkbook.FullName
    ThisWorkbook.Close SaveChanges:=False
End Sub
小雨

TOP

本帖最後由 hueywen_jia 於 2015-4-28 00:06 編輯

沒有人回應我......有沒有可以幫幫我呀~~謝謝
小雨

TOP

        靜思自在 : 願要大、志要堅、氣要柔、心要細。
返回列表 上一主題