...엑셀 오피스 추가 기능 API 워크 시트 보호 암호 나 Excel의 워크 시트 보호에 관한 질문이
컨텍스트 내가 편집 할 수있는 다른 사용자 그룹에 사용할 다른 워크 시트가 필요하지만, 모든 그룹은 분에서해야한다는 것입니다 예를 들어 모든 시트를보기 usergroup1은 시트 2와 시트 3을 편집 할 수 있으며 시트 1의 일부만 편집 할 수 있습니다. usergroup2는 시트 1 만 편집 할 수 있습니다.
FormatProtection (range.format.protection.locked = false;
)과 WorksheetProtection (worksheet.protection.protect();
)을 활성화 할 수 있지만 워크 시트 보호에 대한 API를 통해 암호를 설정할 수있는 권한이없는 것 같습니다. 예를 들어 두 그룹 모두 검토 리본의 시트 보호 해제 옵션을 클릭하고 원하지 않는 시트를 편집 할 수 있습니다.
아래의 문서를 살펴 보았지만 불행히도 사용하지 못했습니다. 예를 들어
- http://dev.office.com/reference/add-ins/excel/worksheetprotection가, 여기에 내가 원하는 함수를 완료하는 것입니다
function CopyWorksheet() { var newAddress; Excel.run(function (ctx) { var worksheet = ctx.workbook.worksheets.getActiveWorksheet(); var range = worksheet.getUsedRange(); range.load(); // insert new worksheet var newWorksheetName = "Copied_Sheet"; var newWorksheet = ctx.workbook.worksheets.add(newWorksheetName); return ctx.sync().then(function() { // copy the old values to the new worksheet newAddress = range.address.substring(range.address.indexOf("!") + 1); newWorksheet.getRange(newAddress).values = range.values; newWorksheet.getRange(newAddress).formulas = range.formulas; newWorksheet.getRange(newAddress).text = range.text; // protect both worksheets worksheet.protection.protect(); newWorksheet.protection.protect(); // requirement here to set a password so that no one can // edit the worksheets by selecting 'Unprotect Sheet' in excel // ... }) .then(ctx.sync)}) .catch(function(error) { console.log("Error: " + error); }); }
을 현재 I 2016 Excel을 사용하고 있습니다 (바탕 화면 번역). 구현이 가능합니까 아니면 동일한 결과를 얻을 수있는 몇 가지 기능을 놓친 적이 있습니까?
도움 주셔서 감사합니다.
지금까지 해보신 것은 무엇입니까? 더 많은 코드를 보여주십시오. 실제 프로그래밍에 대한 자세한 내용은 거의 알려지지 않았습니다. –
@Tom 빠른 응답을 해주셔서 감사합니다. 추가 컨텍스트에 대한 게시물에 몇 가지 코드를 추가했습니다. – Nigel