Постоянство бета
0
Аула точки
165
Постижения
3
Изгледани уроци
0
Харесани отговора
1
Общо отговора
5
Въпроса
0
Последвани
0
Потвърдени умения
от харесани отговори разделени по софтуер
1
Microsoft Excel
Записани курсове
Постижения
В АУЛА винаги се стремим да подобрим начина на обучение и поради това въведохме точкова система с постижения.
Принципът на работа е съвсем прост - за определено действие в АУЛА (като преминати уроци, преминат тест,
отговор на въпрос от друг колега) се получават точки и постижения. Така ще възнаграждаваме хората, които
регулярно гледат уроците и помагат на другите в сайта.
Страхотна екипна работа
Добра екипна работа
Благодарност
Последни форум дискусии
Видно съм нов и в Форума и не съм си прочел и правилата, за което поднасям извиненията си.
В шернатата папка има документ съдържащ скриптЪт.
Папката с файловете е именувана "Test" (foldername = 'Test');
За да се вземе range информацията която ще се обработва започваме от втория ред (row = 2), първата колона (column = 1) и борй на редовете които ще се обработват (numRows = 5);
За да може да се опстнат имената на файловете и линковете към тях (за да се състави адреса на клетките в които ще се слагат) (columnName = 'B', columnLink = 'C');
В While има един if, който изключва името на GoogleSheet файлът, за да не се появява и той (за всеки случай);
След това проверяваме дали името от колоната Имена го има в списъкът от файлове IfNameExistInList(checkName, listWithNames);
Ако съществува име на файл като това от колоната с имена взимаме индекса на този файл от списъкът с файлове GetMatchingIndex(checkName, listWithNames);
Съставяме адреса на клетката за името на файлът и за линкът към файлът;
След това постваме информацията;
Това е линк към папката в моят драйв с GoogleSheet файлът и тестови текстови файлове.
Нужно е да се отвори Скрип Едитора и да се пусне скрипта, след което би трябвало келтки за име файл и линк да се попълнят.
Тай като за първи път работя с това чудо, не съм убеден че ще може да бъде пуснато през шерващият линк, но не пречи да се пробва.
Друг вариант е да си подготвите във Вашия дравй подходящ файл с подходящи файлове за обработка да копирате скрипта в скрипт едитор, като заместите необходимите променливи с тези във Вашия случай.
Според мен по добрия вариант е да се линкнат променливите към определени клетки в Sheet-а, за да може промяната им да е динамична;
Ето и link -> https://drive.google.com/drive/folders/1E6H0T1xvWZA024himeEKNw8Ip9kUvNO9?usp=sharing
За въпроси и допълнения съм насреща;
Забележка: Тай като ще работите с много имена има голяма вероятност някое име да съвпадне от тази гледна точка е добре да се правят проверки и по още поне един критерий.
ЕГН също не е удаче вариант, може някакво ваше служебно поле, гарантиращо неповтаряемост;
function listFolderContents() {
var foldername = 'Test';
var folders = DriveApp.getFoldersByName(foldername)
var folder = folders.next();
var contents = folder.getFiles();
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var row = 2;
var column = 1;
var numRows = 5;
var dataRange = sheet.getRange(row, column, numRows);
var listOfNames = dataRange.getValues();
var file;
var name;
var link;
var row = 2;
var columnName = 'B';
var columnLink = 'C';
while(contents.hasNext()) {
file = contents.next();
name = file.getName();
link = file.getUrl();
if (name != 'TestLinks')
{
if (IfNameExistInList(name.slice(0, -4), listOfNames))
{
var numberOfRowWhereNamesMatch = GetMatchingIndex(name.slice(0, -4), listOfNames);
var cellNameAddress = columnName + (row + numberOfRowWhereNamesMatch);
var cellLinkAddress = columnLink + (row + numberOfRowWhereNamesMatch);
sheet.getRange(cellNameAddress).setValue(name);
sheet.getRange(cellLinkAddress).setValue(link);
}
}
}
}
function GetMatchingIndex(checkName, listWithNames)
{
var lengthOfList = listWithNames.length;
for (i = 0; i < lengthOfList; i++) {
if (listWithNames[i] != '' && checkName == listWithNames[i])
{
return i;
}
}
}
function IfNameExistInList(checkName, listWithNames)
{
var lengthOfList = listWithNames.length;
for (i = 0; i < lengthOfList; i++) {
if (checkName == listWithNames[i])
{
return true;
}
}
return false;
}
Юлия, ще помоля при положение че не е проблем за теб, да ми изпратиш примерна таблица с имена и е-мейли и да маркираш къде трябва да се появят линковете (може и да е екселски файл). Искам това, защото задачата е индивидуална и не мога да намеря готово решение, но пък ми е интересно и може да помогна.
Здравей, Юлия.
Мисля, че ето това -> https://developers.google.com/apps-script/articles/sending_emails е решение на твоята задача.
Поздрави!