我們正在使用Excel文件將數據上傳到數據庫。在excel.in第一個工作表中有許多工作表,其中有一個按鈕(名爲Export)來自剩餘工作表的數據到數據庫。在一張表中我寫了基於邏輯的鎖定單元。以下是代碼。通過提供工作表(索引).Unprotect,Excel中的按鈕不起作用
Function LockingExpiryDateCells(ByVal Target As Range, ByVal ExpDateColOffset, ByVal Expdate As String)
Dim rowCount As Integer
rowCount = Range("A" & Rows.Count).End(xlUp).Row ' get the count of rows that contains records
ActiveSheet.Unprotect
Cells.Locked = False
If (ExpDateColOffset >= 0) Then
Target.Cells.Offset(0, ExpDateColOffset).Value = Expdate
End If
For i = 7 To rowCount
If (Cells(i, 4) = "A") Then
Cells(i, 7).Locked = True
Else
Cells(i, 7).Locked = False
End If
Next i
ActiveSheet.Protect
端功能
雖然導出(點擊導出按鈕),我得到了以下錯誤。 雖然谷歌搜索,我認爲這是保護工作表(有一個宏正在運行的每張工作表驗證內容)。 所以我給出的代碼,以避免該錯誤
Private Sub Worksheet_Deactivate()
Worksheets(Index).UnProtect
End Sub
然後就是錯誤消失。並在我的系統中正常工作。所以我部署到QA。在測試時,我注意到「導出」按鈕一直處於禁用狀態。
當我恢復更改時,啓用按鈕。
我找不到解決此問題的任何解決方案。
請給予任何解決辦法。
在此先感謝。
** Index **是一個全局變量? –
當你說你點擊了Export按鈕時,你的意思是一個你命名爲Export的按鈕,並且有它的代碼?如果是這樣,那麼代碼中的所有內容呢?在那裏試圖寫入受保護的工作表是否有價值? – peege
@ Maciej Los:理解我只是給了'索引' - 它會是一個數字值。 –