2009-02-11 137 views
0

至於我的問題的輔助方法,在這裏:Show Cell Range on UserForm; then update激活範圍,允許編輯,繼續

我想有一個選擇的範圍,並激活一個宏,但允許用戶編輯在細胞範圍。然後,它需要一個移動到下一個範圍的按鈕。有沒有辦法讓表單可見,但允許用戶訪問範圍?

如果這是可能的,我可以臨時鎖定所有其他單元而不是範圍內的更新發生,以避免錯誤?

回答

1

您可以顯示在「無模式」狀態,一種形式,這意味着用戶不會被鎖定於形式:

Dim interactionForm As New DemoForm 

interactionForm.Show vbModeless 

您還可以通過編程鎖定,您想要什麼解鎖取決於某些單元格範圍這樣做:

Dim bigRange As Range 
Set bigRange = Sheet1.Range("SomeRange") 

Sheet1.Cells.Locked = True 
bigRange.Locked = False 
Sheet1.Protect "password1" ' add other options here 

使用這個,你可以鎖定表中的所有細胞,但解鎖你希望他們編輯的範圍。你甚至可以爲綠色或其他顏色着色,以強制你希望他們做的事情。

只要不要忘記解鎖一切,當你完成!

Sheet1.Unprotect "password1" 
Sheet1.Cells.Locked = False 
+0

這正是我所需要的!非常感謝! – 2009-02-11 12:13:23