Vinnaren i pepparkakshustävlingen!
2018-12-11, 10:57
  #1
Medlem
Hej! Jag sitter och jobbar med en slags närvarorapport genom google sheets där syftet är att skicka mail innehållande närvarostatistik till en lista med mailadresser. Problemet jag stött på är att mitt script endast klarar av att skicka mail till två av cirka 22 mailadresser, oavsett vilken ordning de står i. Det är dessutom alltid samma två adresser som funkar.

När man kör debug-funktionen ger den inga felmeddelanden, och den funkar bevisligen eftersom två av adresserna tar emot mailen perfekt.

Scriptet är:
Citat:
/**

** Skickar närvarorapport

*/

function sendEmails() {



var sheet = SpreadsheetApp.getActiveSheet();



var startRow = 2; // Första dataraden.



var numRows = 2; // Antal datarader.



// Ovan hämtar värden för behandling.



var dataRange = sheet.getRange(startRow, 1, numRows, 23);

// Hämtar alla värden.



var data = dataRange.getValues();



for (i in data) {



var row = data[i];

var emailAddress = row[0]; // Kolumn 1 (med mailadresser)

var message = "Hej!* " + "\n" + row[1] + "% är din befintliga närvaro." + "\n"+ "Är denna siffra under 85%, vänligen kontakta skolan." + "\n" + "MVH Administrationen" ; // Kolumn 2 (Med närvaro%)

var subject = 'Närvarorapport';

MailApp.sendEmail(emailAddress, subject, message);

}

}


Är det någon som haft liknande problem och vet hur man kan lösa det? Värt att tillägga är kanske att google script i mångt och mycket liknar JavaScript, så kunskaper därifrån borde gå att tillämpa även här.
Citera
2018-12-11, 11:03
  #2
Medlem
Såg när jag läste igenom inlägget att jag bara konfigurerat den för 2 adresser:
Citat:
var numRows = 2
när det borde stått 22.

Problemet löst, admin kan ta bort!
Citera
2018-12-18, 10:29
  #3
Medlem
Citat:
Ursprungligen postat av Sirbeast
Såg när jag läste igenom inlägget att jag bara konfigurerat den för 2 adresser: när det borde stått 22.

Problemet löst, admin kan ta bort!
Tråden får gärna ligga kvar.

Jag tycker där ett utmärkt exempel på hur man löser ett problem, genom att förklara det för någon annan. Oftast hittar man felet själv.
Men i detta fall hade jag blivit utskrattad i en vecka!

Annars är det CTRL+A och DEL som gäller, och börja om från början. Små kod-snuttar brukar bli väldigt bra i andra försöket.

(Sedan tycker jag att du borde initiera variabeln numRows med det faktiska antalet mailadreser.)
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback