星期三, 1月 02, 2019

[VFP] Automation 應用 - 允許編輯範圍

突然被使用者提出需求說,要對某份 Excel 設定保護唯讀,但是某欄位要可以進行編輯,直接在 Excel 上進行設定時,直覺是 Excel 2016 上功能,好像跟以前版本不太一樣

[VFP] Automation 應用 - 允許編輯範圍-1

[VFP] Automation 在 Excel 上的應用 筆記中,有發現以前是透過對欄位進行[鎖定]設定來達到需求,測試過在 Excel 2016 上[鎖定]也還是可以用,現在是透過[允許編輯範圍],整合一下兩種用法囉
-- 原設定方式
loExcel.ActiveSheet.Range("目標範圍").Select
loExcel.SELECTION.Locked = .F.
loExcel.ActiveSheet.Protect("密碼")

-- Excel 2016 設定方式
TargetRange = loExcel.ActiveSheet.Range("目標範圍")
-- 範圍名稱可以隨便取,不要重覆就好,預設是範圍1、範圍2 ... 的流水號
loExcel.ActiveSheet.Protection.AllowEditRanges.Add("範圍名稱",TargetRange) 
loExcel.ActiveSheet.Protect("密碼")

沒有留言:

張貼留言