Google Apps scrip Tạo form nhập liệu – Hình ảnh, thêm mới, tìm kiếm, cập nhật, xóa
Giaoan.link chia sẻ đến các bạn về Google Apps scrip Tạo form nhập liệu – Hình ảnh, thêm mới, tìm kiếm, cập nhật, xóa. Việc thay đổi vị trí các trường để tùy chỉnh theo giao diện bạn muốn thì bàn cần xem để thay đổi các Cell tương ứng nhằm đảm bảo sự hoạt động của form. Để hiểu hơn, các bạn nên xem clip hướng dẫn bên dưới.
Các bài tập ứng dụng của excel khác:
- Google sheet, apps script, webapp “Bé Vui Phép Nhân” – Công Cụ Luyện Toán Trực Quan Cho Học Sinh Tiểu Học
- Google sheet webapp Bé Vui Học Toán – Ứng dụng Luyện Phép Chia Trực Quan Cho Học Sinh Lớp 3
- Googlesheet appscript – Hệ Thống Đăng Ký Hồ Sơ Trực Tuyến (Online Registration Portal)
- [Share Code] Biến Google Sheet thành Web App Tra Cứu Dự Án & Tài Liệu (Miễn Phí Hosting)
- Hệ Thống Quản Lý Phòng Game “Cloud-Native” với Google Apps Script
- Hệ Thống Điều Phối & Quản Lý Đội Xe Thông Minh (Web App)
- Biến Google Sheets thành Dashboard “Viễn Tưởng” phong cách Cyberpunk
- Google appscript | Hệ thống tìm thông tin và nhập liệu 2 Form-Tự động truy vấn và upload nhiều files
- Google sheet Webapp|Giáo viên chủ nhiệm quản lý điểm, thống kê xếp hạng chia sẻ cho phụ huynh
- Google sheet Webapp | Bản nâng cấp Tìm và Load Thông tin sinh viên có Hình ảnh và Bảng kết quả thi
Mã apps script
//Convert format url in Cell K15 ==================
=IFERROR(ARRAYFORMULA(CONCAT(CONCAT("https://drive.google.com/thumbnail?id=",(REGEXEXTRACT(C15,"([-\w]{25,})"))),"&sz=w960-h540")),)
//Show image in Cell H6 =====================
=image(SUBSTITUTE(trim(K15),"open?id","uc?export=download&id"))
// Save Data================================================
function submitData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var formSS = ss.getSheetByName("Form"); //Form Sheet
var datasheet = ss.getSheetByName("Data"); //Data Sheet
//Input Values
var values = [[formSS.getRange("C6").getValue(),
formSS.getRange("C8").getValue(),
formSS.getRange("C10").getValue(),
formSS.getRange("F6").getValue(),
formSS.getRange("F10").getValue(),
formSS.getRange("F8").getValue(),
formSS.getRange("C12").getValue(),
formSS.getRange("K15").getValue()
]];
// Save New Data
datasheet.getRange(datasheet.getLastRow()+1, 1, 1, 8).setValues(values);
SpreadsheetApp.getUi().alert(' "Dữ liệu mới đã được tạo cho - NV #' + formSS.getRange("C6").getValue() +' "');
formSS.getRange("C6").clear();
formSS.getRange("C8").clear();
formSS.getRange("C10").clear();
formSS.getRange("C12").clear();
formSS.getRange("C15").clear();
formSS.getRange("F6").clear();
formSS.getRange("F8").clear();
formSS.getRange("F10").clear();
}
// Clear form =====================================
function ClearCell() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var formSS = ss.getSheetByName("Form"); //Form Sheet
formSS.getRange("C6").clear();
formSS.getRange("C8").clear();
formSS.getRange("C10").clear();
formSS.getRange("C12").clear();
formSS.getRange("C15").clear();
formSS.getRange("F6").clear();
formSS.getRange("F8").clear();
formSS.getRange("F10").clear();
return true ;
}
//Search data========================
var SPREADSHEET_NAME = "Data";
var SEARCH_COL_IDX = 0;
var RETURN_COL_IDX = 0;
function searchStr() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var formSS = ss.getSheetByName("Form"); //Form Sheet
var str = formSS.getRange("C4").getValue();
var values = ss.getSheetByName(SPREADSHEET_NAME).getDataRange().getValues();
for (var i = 0; i < values.length; i++) {
var row = values[i];
if (row[SEARCH_COL_IDX] == str) {
formSS.getRange("C6").setValue(row[0]) ;
formSS.getRange("C8").setValue(row[1]);
formSS.getRange("C10").setValue(row[2]);
formSS.getRange("F6").setValue(row[3]);
formSS.getRange("F10").setValue(row[4]);
formSS.getRange("F8").setValue(row[5]);
formSS.getRange("C12").setValue(row[6]);
formSS.getRange("C15").setValue(row[7]);
return row[RETURN_COL_IDX];
}
}
}
//Update====================
function updateData() {
var SPREADSHEET_NAME = "Data";
var SEARCH_COL_IDX = 0;
var RETURN_COL_IDX = 0;
var ss = SpreadsheetApp.getActiveSpreadsheet();
var formSS = ss.getSheetByName("Form"); //Form Sheet
var datasheet = ss.getSheetByName("Data"); //Data Sheet
var str = formSS.getRange("C4").getValue();
var values = ss.getSheetByName(SPREADSHEET_NAME).getDataRange().getValues();
for (var i = 0; i < values.length; i++) {
var row = values[i];
if (row[SEARCH_COL_IDX] == str) {
var INT_R = i+1
var values1 = [[formSS.getRange("C6").getValue(),
formSS.getRange("C8").getValue(),
formSS.getRange("C10").getValue(),
formSS.getRange("F6").getValue(),
formSS.getRange("F10").getValue(),
formSS.getRange("F8").getValue(),
formSS.getRange("C12").getValue(),
formSS.getRange("K15").getValue()
]];
datasheet.getRange(INT_R, 1, 1, 8).setValues(values1);
SpreadsheetApp.getUi().alert(' "Dữ liệu đã được cập nhật cho - NV #' + formSS.getRange("C6").getValue() +' "');
return row[RETURN_COL_IDX];
}
}
}
function rowDelete() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var formSS = ss.getSheetByName("Form"); //Form Sheet
var datasheet = ss.getSheetByName("Data"); //Data Sheet
var ui = SpreadsheetApp.getUi();
var response = ui.alert(
'Xóa mẫu tin này?',
ui.ButtonSet.YES_NO);
// Process the user's response.
if (response == ui.Button.YES) {
var str = formSS.getRange("C4").getValue();
var values = ss.getSheetByName(SPREADSHEET_NAME).getDataRange().getValues();
for (var i = 0; i < values.length; i++) {
var row = values[i];
if (row[SEARCH_COL_IDX] == str) {
var INT_R = i+1
datasheet.deleteRow(INT_R) ;
formSS.getRange("C6").clear();
formSS.getRange("C8").clear();
formSS.getRange("C10").clear();
formSS.getRange("C12").clear();
formSS.getRange("C15").clear();
formSS.getRange("F6").clear();
formSS.getRange("F8").clear();
formSS.getRange("F10").clear();
return row[RETURN_COL_IDX];
}
}
}
}
