Board logo

標題: 執行程式會改變儲存格格式中鎖定的問題 [打印本頁]

作者: 藍天麗池    時間: 2017-6-20 11:26     標題: 執行程式會改變儲存格格式中鎖定的問題

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
   If Not Intersect(Target, [B5:B90000]) Is Nothing Then
        Range("O" & Target.Row).Formula = "=IF(MOD(RC[-13],100)=0,R[-1]C,INT(RC[-13]/100))"
        
   ElseIf Not Intersect(Target, [F5:F90000]) Is Nothing Then
        Range("S" & Target.Row).Formula = "=IF(RC[-13]=1,IF(AND(RC[-14]>=RC[-15],R[-1]C[-14]<=R[-1]C[-16],R[1]C[-14]<=R[1]C[-16]),1,IF(AND(RC[-14]<=RC[-16],R[-1]C[-14]>=R[-1]C[-15],R[1]C[-14]>=R[1]C[-15]),-1,0)),0)"
      
   End If
   Application.EnableEvents = True
        

End Sub

請問版上大大,當我將目標(O欄)儲存格格式中的鎖定取消勾選,然後將活頁簿鎖起來後,執行上述程式碼,會出現資料無法寫入的狀況,然後我將活頁簿解開後,將儲存格格式打開,會發現鎖定的那個欄位被自動勾選了,如果我按偵錯則這欄→Range("O" & Target.Row).Formula = "=IF(MOD(RC[-13],100)=0,R[-1]C,INT(RC[-13]/100))"會反白,請問版上大大為什麼會這樣??要如何修改呢?




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)