工作表保護(在以保護下,當某個區塊填寫資料後,整個工作表都是保護不能填寫資料)
- 帖子
- 559
- 主題
- 58
- 精華
- 0
- 積分
- 626
- 點名
- 0
- 作業系統
- win8
- 軟體版本
- office2013
- 閱讀權限
- 50
- 性別
- 男
- 來自
- TW
- 註冊時間
- 2010-11-22
- 最後登錄
- 2024-6-14
|
工作表保護(在以保護下,當某個區塊填寫資料後,整個工作表都是保護不能填寫資料)
Dear 大大
詢問一下保護工作表的功能,如下圖及附件所示,
一般保護工作表,都是為了不讓整個資料結構被修改或移動,避免導致資料在撈取時,所產生的錯誤,
所以,都會設定某些欄位是開放給填寫者填寫,
但現在的需求是:當填寫者填寫完後,該資料是要被上鎖,避免下個審核者去修改到填寫者的資料,
想請教大大們,對於這一個問題,可以賜教、解惑。
表護工作表練習.rar (13.26 KB)
|
|
學習才能提升自己
|
|
|
|
|
- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
2#
發表於 2014-12-15 16:56
| 只看該作者
回復 1# hugh0620
要的是這樣嗎? 按按鈕後 刪除"允許使用者編輯範圍"內的設定- Private Sub CommandButton1_Click()
- Unprotect Password:="1234"
- ActiveSheet.Protection.AllowEditRanges(1).Delete
- Protect Password:="1234"
- End Sub
複製代碼 |
|
表達不清、題意不明確、沒附檔案格式、沒有討論問題的態度~~~~~~以上愛莫能助。
|
|
|
|
|
- 帖子
- 559
- 主題
- 58
- 精華
- 0
- 積分
- 626
- 點名
- 0
- 作業系統
- win8
- 軟體版本
- office2013
- 閱讀權限
- 50
- 性別
- 男
- 來自
- TW
- 註冊時間
- 2010-11-22
- 最後登錄
- 2024-6-14
|
3#
發表於 2014-12-15 18:29
| 只看該作者
本帖最後由 hugh0620 於 2014-12-15 18:30 編輯
回復 2# stillfish00
Dear stillfish00
謝謝你提供的方式,可以達到需求功能,
但是否有其他種方式,既可以保留用本允許使用者的範圍,又可以將其保護起來。
delete 的方式,希望是最後一種考慮的方式。 |
|
學習才能提升自己
|
|
|
|
|
- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
4#
發表於 2014-12-15 21:04
| 只看該作者
回復 3# hugh0620
不知道,大概不能
我自己一般是將可輸入的儲存格用名稱管理員先定義
然後控制各名稱範圍內的儲存格"鎖定"或"不鎖定"
然後再保護工作表
允許使用者編輯感覺是無視有沒有鎖定都可編輯,我是比較少用的。 |
|
表達不清、題意不明確、沒附檔案格式、沒有討論問題的態度~~~~~~以上愛莫能助。
|
|
|
|
|
- 帖子
- 559
- 主題
- 58
- 精華
- 0
- 積分
- 626
- 點名
- 0
- 作業系統
- win8
- 軟體版本
- office2013
- 閱讀權限
- 50
- 性別
- 男
- 來自
- TW
- 註冊時間
- 2010-11-22
- 最後登錄
- 2024-6-14
|
5#
發表於 2014-12-16 00:21
| 只看該作者
本帖最後由 hugh0620 於 2014-12-16 00:23 編輯
回復 4# stillfish00
Dear stillfish00
用名稱管理員來定義,聽起來也許是另一條適合達到我需求的方式
能否請您做一個簡單的範本,提供給我參考看看,感恩。
(個人比較少對保護有所使用或研究,不是很熟悉更深入的方式,請使用最簡單的保護操作) |
|
學習才能提升自己
|
|
|
|
|
- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
6#
發表於 2014-12-16 10:31
| 只看該作者
回復 5# hugh0620
先定好名稱 IN_DATA1 的範圍- Private Sub CommandButton1_Click()
- LockInput
- End Sub
- Private Sub UnlockInput()
- Unprotect Password:="1234"
- Range("IN_DATA1").Locked = False
- Protect Password:="1234"
- End Sub
- Private Sub LockInput()
- Unprotect Password:="1234"
- Range("IN_DATA1").Locked = True
- Protect Password:="1234"
- End Sub
複製代碼
保護工作表練習2.zip (14.18 KB)
|
|
表達不清、題意不明確、沒附檔案格式、沒有討論問題的態度~~~~~~以上愛莫能助。
|
|
|
|
|
- 帖子
- 559
- 主題
- 58
- 精華
- 0
- 積分
- 626
- 點名
- 0
- 作業系統
- win8
- 軟體版本
- office2013
- 閱讀權限
- 50
- 性別
- 男
- 來自
- TW
- 註冊時間
- 2010-11-22
- 最後登錄
- 2024-6-14
|
7#
發表於 2014-12-17 09:01
| 只看該作者
|
學習才能提升自己
|
|
|
|
|
- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
8#
發表於 2014-12-17 09:36
| 只看該作者
本帖最後由 stillfish00 於 2014-12-17 09:38 編輯
回復 7# hugh0620
光是這樣看不出問題,debug不是只有錯誤代碼就能debug............最好是附檔啦
1. 按偵錯
2. 在即時運算視窗輸入 ?Range("AAA").address , 看是否會出錯
3. 檢查此時是否能手動對輸入範圍的儲存格做鎖定: 右鍵>儲存格格式>保護>鎖定 |
|
表達不清、題意不明確、沒附檔案格式、沒有討論問題的態度~~~~~~以上愛莫能助。
|
|
|
|
|
- 帖子
- 559
- 主題
- 58
- 精華
- 0
- 積分
- 626
- 點名
- 0
- 作業系統
- win8
- 軟體版本
- office2013
- 閱讀權限
- 50
- 性別
- 男
- 來自
- TW
- 註冊時間
- 2010-11-22
- 最後登錄
- 2024-6-14
|
9#
發表於 2014-12-17 11:38
| 只看該作者
|
學習才能提升自己
|
|
|
|
|
- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
10#
發表於 2014-12-17 14:06
| 只看該作者
回復 9# hugh0620
含合併儲存格,改這樣:
For Each x In Range("AAA")
x.MergeArea.Locked = False
Next |
|
表達不清、題意不明確、沒附檔案格式、沒有討論問題的態度~~~~~~以上愛莫能助。
|
|
|
|
|