- Katılım
- 29 Ocak 2024
- Mesajlar
- 203
- Excel Vers. ve Dili
- Office 2016
Kıymetli Hocalarım merhaba;
Aşağıdaki linkte yer alan Google sheet "Data" tablosunda, A sütunundaki hücrelerde adlandırılmış aralıktan gelen veri doğrulama mevcut;
Bu veriler "Parametre" sayfasının A sütunundan almakta; ve veri doğrulama elemanları A_, B_, C_,D_, E_ şeklinde;
Aynı zamanda "Parametre" sayfasında bu elamanlara dair alt elamanların olduğu veriler mevcut ve bunlar da ana elaman adlarıyla (A_, B_, C_,D_, E_ ) adlandırılmış durumda;
https://docs.google.com/spreadsheets/d/
Burada yapmak istediğim
Data sayfasının A sütununda bir hücre değiştiği zaman (Dolu bir değerde), hemen sağında B sütunun hücresine aynı isimdeki veri doğrulama uygulamak;
Örnek: A5 hücresi "E_" değeri seçildi, hemen B5 hücresine, "E_" olarak adlandırılmış (e1,e2,e3, ..... ) veri doğrulamayı uygulayacak!, eğer A5 hücresinde de hiç bir veri olmazsa yani boş olursa B5 hücresindeki veri doğrulamayı silecek;
Bu işlemi yapacak bir script oluşturmaya çalışıyorum ama beceremedim, yardımcı olursanız çok sevinirim.
şimdiden teşekkürler,
iyi hafta sonları dilerim.
Aşağıdaki linkte yer alan Google sheet "Data" tablosunda, A sütunundaki hücrelerde adlandırılmış aralıktan gelen veri doğrulama mevcut;
Bu veriler "Parametre" sayfasının A sütunundan almakta; ve veri doğrulama elemanları A_, B_, C_,D_, E_ şeklinde;
Aynı zamanda "Parametre" sayfasında bu elamanlara dair alt elamanların olduğu veriler mevcut ve bunlar da ana elaman adlarıyla (A_, B_, C_,D_, E_ ) adlandırılmış durumda;
https://docs.google.com/spreadsheets/d/
Burada yapmak istediğim
Data sayfasının A sütununda bir hücre değiştiği zaman (Dolu bir değerde), hemen sağında B sütunun hücresine aynı isimdeki veri doğrulama uygulamak;
Örnek: A5 hücresi "E_" değeri seçildi, hemen B5 hücresine, "E_" olarak adlandırılmış (e1,e2,e3, ..... ) veri doğrulamayı uygulayacak!, eğer A5 hücresinde de hiç bir veri olmazsa yani boş olursa B5 hücresindeki veri doğrulamayı silecek;
Bu işlemi yapacak bir script oluşturmaya çalışıyorum ama beceremedim, yardımcı olursanız çok sevinirim.
Kod:
function onEdit(){
var tabLists = "Parametre";
var tabValidation = "Data";
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var datass = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(tabList);
var activeCell = ss.getActiveCell();
if(activeCell.getColumn() == 1 && activeCell.getRow() > 1 && ss.getSheetName() == tabValidation){
activeCell.offset(0, 1).clearContent().clearDataValidations();
var makes = datass.getRange(1, 1, 1, datass.getLastColumn()).getValues();
var makeIndex = makes[0].indexOf(activeCell.getValue()) + 1;
if(makeIndex != 0){
var validationRange = datass.getRange(3, makeIndex, datass.getLastRow());
var validationRule = SpreadsheetApp.newDataValidation().requireValueInRange(validationRange).build();
activeCell.offset(0, 1).setDataValidation(validationRule);
}
}
}
iyi hafta sonları dilerim.