사용자가 최대 100 줄의 정보를 입력 할 수있는 스프레드 시트를 만들려고합니다. 제출 버튼 스크립트를 클릭하면 해당 데이터가 마스터 데이터 스프레드 시트에 입력됩니다.한 스프레드 시트에서 다른 스프레드 시트로 값을 전송하는 중
나는 마스터 데이터 시트로 데이터를 전송하고 스크립트를 작성했으며 openbyID를 사용하여 대상 시트를 엽니 다.
문제는 마스터 데이터 시트에 액세스하지 않으면 사용자가 시트를 열어 데이터를 추가 할 수 없다는 것입니다. 스프레드 시트에 액세스하지 않고 스프레드 시트에 데이터를 추가하는 방법이 있다면 내 필요에 이상적입니다.
가능한지 알려주세요.
저는 다시 OpenByID를 사용하여 스프레드 시트를 열고 사용자가 스프레드 시트에 직접 액세스하지 않고 마스터 스프레드 시트에 데이터를 추가 할 수있게하려고합니다.
도움을 주시면 대단히 감사하겠습니다.
질문 사항이 있으면 알려주십시오.
Sorry I am not sure how to write my script as web app.
당신이 날은이 웹 응용 프로그램으로 작업을 변경하는 방법을 설명하는 데 도움 주실 래요 .. 내 스크립트 아래 참조하십시오
당신에게 Khokhar내 코드 감사?
는function CopyDataToMaster() {
var inf = SpreadsheetApp.getActiveSpreadsheet();
var inf_sheet = inf.getSheetByName("Info");
var tt_key = inf_sheet.getRange("A4").getValue();
var SiteName = inf_sheet.getRange("A2").getValue();
var d = new Date();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var tt = SpreadsheetApp.openById(tt_key);
var ss_sheet = ss.getSheetByName("Report");
var tt_sheet = tt.getSheetByName("Master-Data-Sheet");
var FilledBy = ss_sheet.getRange("C5").getValue();
var tt_last_row = tt_sheet.getLastRow();
var tt_work_row = tt_last_row+1;
for (var i=1; i<=100 ; i++) {
var dDr = ss_sheet.getRange(i+10, 2);
var dD = dDr.getValue();
if (dD!="") {
var nMr = ss_sheet.getRange(i+10, 3);
var nM = nMr.getValue();
var aMr = ss_sheet.getRange(i+10, 4);
var aM = aMr.getValue();
var bWr = ss_sheet.getRange(i+10, 5);
var bW = bWr.getValue();
var bSr = ss_sheet.getRange(i+10, 6);
var bS = bSr.getValue();
var tDr = ss_sheet.getRange(i+10, 7);
var tD = tDr.getValue();
var mOr = ss_sheet.getRange(i+10, 8);
var mO = mOr.getValue();
var bOr = ss_sheet.getRange(i+10, 9);
var bO = bOr.getValue();
var dCr = ss_sheet.getRange(i+10, 10);
var dC = dCr.getValue();
tt_sheet.insertRowAfter(tt_work_row-1);
tt_sheet.getRange(tt_work_row,1).setValue(Utilities.formatDate(new Date(),+5.5, "MM/dd/yyyy HH:mm:ss"));
tt_sheet.getRange(tt_work_row,2).setValue(SiteName);
tt_sheet.getRange(tt_work_row,3).setValue(FilledBy);
tt_sheet.getRange(tt_work_row,4).setValue(dD);
tt_sheet.getRange(tt_work_row,5).setValue(nM);
tt_sheet.getRange(tt_work_row,6).setValue(aM);
tt_sheet.getRange(tt_work_row,7).setValue(bW);
tt_sheet.getRange(tt_work_row,8).setValue(bS);
tt_sheet.getRange(tt_work_row,9).setValue(tD);
tt_sheet.getRange(tt_work_row,10).setValue(mO);
tt_sheet.getRange(tt_work_row,11).setValue(bO);
tt_sheet.getRange(tt_work_row,12).setValue(dC);
dDr.clearContent();
nMr.clearContent();
aMr.clearContent();
bWr.clearContent();
bSr.clearContent();
tDr.clearContent();
mOr.clearContent();
bOr.clearContent();
dCr.clearContent();
tt_work_row = tt_work_row+1;
}
}
Browser.msgBox("Thank you", "Information has been submitted",Browser.Buttons.OK)
}
행운을 빈다. 대답은 문서 (예 : Google Apps-Script & JavaScript 설명서)에 있습니다. ... 이것은 당신이 프로그래머에게 지불해야 할 일종의 것입니다. – eddyparkinson