Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- APPS SCRIPT UNTUK MENGIMPORT SOAL DARI GOOGLE SPREADSHEET KE GOOGLE FORM
- PEMBUAT: I KADEK ADI SUANDANA | kadoel@smkn1nusapenida.sch.id
- */
- function importDariSpreadSheet() {
- var kadoel_halamanSoal = SpreadsheetApp.getActive().getSheetByName('Soal');
- var kadoel_jumlahBaris = kadoel_halamanSoal.getDataRange().getNumRows();
- var kadoel_pertanyaan = kadoel_halamanSoal.getRange(1,1,kadoel_jumlahBaris,1).getValues();
- var kadoel_pilihanJawaban = kadoel_halamanSoal.getRange(1,2,kadoel_jumlahBaris,5).getValues();
- var kadoel_point = kadoel_halamanSoal.getRange(1,7,kadoel_jumlahBaris,1).getValues();
- var kadoel_mataPelajaran = kadoel_halamanSoal.getRange("B1").getValue();
- var kadoel_halaman_kelas = SpreadsheetApp.getActive().getSheetByName('Kelas');
- var kadoel_pilihanKelas = kadoel_halaman_kelas.getRange(2,1, kadoel_halaman_kelas.getMaxRows()-1).getValues();
- var kadoel_halaman_token = SpreadsheetApp.getActive().getSheetByName('Token');
- var token = kadoel_halaman_token.getRange("A2").getValue(); //Ambil Nilai Token
- //Membuat Form Beserta Section 1
- var kadoel_form_soal = FormApp.create('SOAL PAS '+ kadoel_mataPelajaran) // nama Form
- .setTitle('PENILAIAN AKHIR SEMESTER GENAP 2019 / 2020 - '+ kadoel_mataPelajaran) //Judul Section 1
- .setDescription('Petunjuk Umum: \n'+
- '1. Tulislah terlebih dahulu nama dan nomor absen dan pilih kelas \n'+
- '2. Periksa dan baca soal-soal sebelum Anda menjawab \n'+
- '3. Kerjakan soal yang Anda anggap paling mudah \n'+
- '4. Periksa pekerjaan anda sebelum dikirim \n'+
- '5. Alokasi waktu 2 jam') // Deskripsi Section 1
- .setLimitOneResponsePerUser(true) // Hanya Menerima 1 Respon / Siswa
- .setConfirmationMessage('Jawaban Anda Sudah Disimpan \n'+
- 'Terima Kasih') //Pesan Setelah Selesai Mengerjakan
- .setCustomClosedFormMessage('Maaf, Penilaian Akhir Semester Sudah Berakhir \n'+
- 'Terima Kasih') //Pesan Ketika Tidak Lagi Menerima Respon
- .setShuffleQuestions(true) //Acak Urutan Pertanyaan
- .setIsQuiz(true); //Atur Form Sebagai Juis
- //Buat Kolom Input Nama
- kadoel_form_soal.addSectionHeaderItem();
- var kadoel_nama = kadoel_form_soal.addTextItem().setTitle('Nama').setRequired(true);
- var validasiNama = FormApp.createTextValidation()
- .setHelpText('Penulisan Nama Harus Menggunakan Huruf Besar Semua')
- .requireTextMatchesPattern('[A-Z\\s]+')
- .build();
- kadoel_nama.setValidation(validasiNama);
- //Buat Kolom Input No.Absen
- kadoel_form_soal.addSectionHeaderItem();
- var kadoel_absen = kadoel_form_soal.addTextItem().setTitle('No. Absen').setRequired(true);
- var validasiAbsen = FormApp.createTextValidation()
- .setHelpText('Inputkan Angka Antara 1 - 40')
- .requireTextMatchesPattern('^([1-9]|[1][0-9]|[2][0-9]|[3][0-9]|[4][0])$')
- .build();
- kadoel_absen.setValidation(validasiAbsen);
- //Buat Dropdown Kelas
- kadoel_form_soal.addSectionHeaderItem();
- var kadoel_kelas = kadoel_form_soal.addListItem();
- kadoel_kelas.setTitle('Kelas');
- kadoel_kelas.setRequired(true);
- var namaKelas = [];
- for(var i = 0; i < kadoel_pilihanKelas.length; i++){
- if(kadoel_pilihanKelas[i][0] != "")
- namaKelas[i] = kadoel_pilihanKelas[i][0];
- }
- kadoel_kelas.setChoiceValues(namaKelas);
- //Buat Kolom Input Token
- kadoel_form_soal.addSectionHeaderItem();
- var kadoel_token = kadoel_form_soal.addTextItem().setTitle('Token').setRequired(true);
- var validasiToken = FormApp.createTextValidation()
- .setHelpText('Maaf, Token Salah')
- .requireTextMatchesPattern('^'+token+'$')
- .build();
- kadoel_token.setValidation(validasiToken);
- //Membuat Section 2 Beserta Judul dan Deskripsi
- kadoel_form_soal.addPageBreakItem()
- .setTitle("Soal Pilihan Ganda")
- .setHelpText('Pilihlah Jawaban Yang Menurut Anda Benar');
- //Menambahkan Soal Pilihan Ganda, Pilihan Jawaban, Jawaban Benar, Point, Required
- for(var i=2;i<kadoel_jumlahBaris;i++){
- var kadoel_tambahPertanyaan = kadoel_form_soal.addMultipleChoiceItem();
- kadoel_tambahPertanyaan.setRequired(true);
- kadoel_tambahPertanyaan.setPoints(kadoel_point[i][0]);
- kadoel_tambahPertanyaan.setTitle(kadoel_pertanyaan[i][0]);
- kadoel_tambahPertanyaan.setChoices([
- kadoel_tambahPertanyaan.createChoice(kadoel_pilihanJawaban[i][0],true),
- kadoel_tambahPertanyaan.createChoice(kadoel_pilihanJawaban[i][1]),
- kadoel_tambahPertanyaan.createChoice(kadoel_pilihanJawaban[i][2]),
- kadoel_tambahPertanyaan.createChoice(kadoel_pilihanJawaban[i][3]),
- kadoel_tambahPertanyaan.createChoice(kadoel_pilihanJawaban[i][4])
- ]);
- }
- kadoel_form_soal.addSectionHeaderItem().setTitle('Klik Submit atau Kirim Di Bawah Ini Setelah Selesai Mengerjakan Soal');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement