function createForm() { // Konfigurasi label formulir var formLabel = 'Praktikum Workshop Mikrontroller 2EA'; var formDescription = 'Form Workshop Mikrontroller 2EA'; // Deskripsi formulir // Mendapatkan spreadsheet aktif var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); var sheet = spreadsheet.getActiveSheet(); // Mendapatkan kolom dengan label "nrp", "nama", "kelas", dan "praktikum" var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]; var nrpIndex = headers.indexOf('Nrp') + 1; var namaIndex = headers.indexOf('Nama') + 1; var kelasIndex = headers.indexOf('Kelas') + 1; var praktikumIndex = headers.indexOf('Praktikum') + 1; // Hentikan eksekusi jika tidak menemukan label "Nrp", "Nama", "Kelas", atau "Praktikum" if (nrpIndex === 0 || namaIndex === 0 || kelasIndex === 0 || praktikumIndex === 0) { Logger.log('Label "Nrp", "Nama", "Kelas", atau "Praktikum" tidak ditemukan pada sheet.'); return; } // Mendapatkan data dari kolom "Nrp", "nama", "kelas", dan "judul_praktikum" var dataRange = sheet.getRange(2, 1, sheet.getLastRow() - 1, 4); var dataValues = dataRange.getValues(); // Log data untuk debugging Logger.log('Data Values:', dataValues); // Membuat formulir baru var form = FormApp.create(formLabel); // Menambahkan deskripsi ke formulir form.setDescription(formDescription); // // Membuat pertanyaan dropdown untuk NRP // var nrpQuestion = form.addMultipleChoiceItem(); // nrpQuestion.setTitle('Pilih NRP:') // var nrpChoices = []; // for (var i = 0; i < dataValues.length; i++) { // var nrpString = String(dataValues[i][0]); // nrpChoices.push(nrpString); // } // nrpQuestion.setChoiceValues(nrpChoices); // // Membuat pertanyaan dropdown untuk Mahasiswa // var mahasiswaQuestion = form.addMultipleChoiceItem(); // mahasiswaQuestion.setTitle('Pilih Mahasiswa:') // var mahasiswaChoices = []; // for (var i = 0; i < dataValues.length; i++) { // mahasiswaChoices.push(dataValues[i][1]); // } // mahasiswaQuestion.setChoiceValues(mahasiswaChoices); // Membuat pertanyaan dropdown untuk gabungan data Mahasiswa+NRP var combinedQuestion = form.addListItem(); combinedQuestion.setTitle('Pilih Gabungan NRP dan Mahasiswa:') var combinedChoices = []; for (var i = 0; i < dataValues.length; i++) { var combinedValue = String(dataValues[i][0]).slice(-3) + ' - ' + dataValues[i][1]; combinedChoices.push(combinedValue); } combinedQuestion.setChoiceValues(combinedChoices); // Membuat pertanyaan dropdown untuk Kelas var kelasQuestion = form.addListItem(); kelasQuestion.setTitle('Pilih Kelas:'); var kelasChoices = []; var uniqueKelas = {}; for (var i = 0; i < dataValues.length; i++) { var kelasValue = dataValues[i][2]; if (kelasValue !== "" && kelasValue !== null && !uniqueKelas[kelasValue]) { kelasChoices.push(kelasValue); uniqueKelas[kelasValue] = true; } } kelasQuestion.setChoiceValues(kelasChoices); // Membuat pertanyaan dropdown untuk Praktikum var praktikumQuestion = form.addMultipleChoiceItem(); praktikumQuestion.setTitle('Pilih Praktikum:'); var praktikumChoices = []; var uniquePraktikum = {}; // Objek untuk menyimpan nilai praktikum unik for (var i = 0; i < dataValues.length; i++) { var praktikumValue = dataValues[i][3]; if (praktikumValue !== "" && praktikumValue !== null && !uniquePraktikum[praktikumValue]) { // Tambahkan ke pilihan dropdown jika bukan string kosong, bukan null, dan belum ditambahkan praktikumChoices.push(praktikumValue); uniquePraktikum[praktikumValue] = true; // Tandai praktikum sebagai sudah ditambahkan } } praktikumQuestion.setChoiceValues(praktikumChoices); // Membuat pertanyaan isian untuk Judul Praktikum var PembahasanQuestion = form.addParagraphTextItem(); PembahasanQuestion.setTitle('Masukkan Hasil Analisa anda:'); // // Mengubah pertanyaan isian untuk Judul Praktikum menjadi isian paragraph // var judulPraktikumQuestion = form.addParagraphTextItem(); // judulPraktikumQuestion.setTitle('Masukkan Hasil Laporan:'); // Log pesan untuk memberi tahu bahwa formulir telah berhasil dibuat Logger.log('Formulir telah berhasil dibuat dengan pilihan dropdown dan isian judul praktikum.'); }