2016-04-05 13 views
0

Ich schreibe ein OnOpen-Skript für eine Tabelle. Ich habe eine Nummer in Zelle B1 und ein Datum in C1 Wenn die Tabelle geöffnet wird, möchte ich überprüfen, ob das Datum auf dem Blatt heute ist und wenn nicht, wird das Blatt Datum ändern und auch die Nummer in B1 auf 0fehlt; Fehler beim ersten Versuch bei Skript

Ich bekomme den Fehler fehlt; vor Aussage. (Linie 8, Datei "Code") (die die if-Anweisung ist)

function OnOpen(e) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheetByName("Create Ticket"); 
    var TicketCount = sheet.getRange("B1").getvalue(); 
    var TicketDate = sheet.getRange("C1").getvalue(); 
    var Today = date().setNumberFormat("dd/mm/yyyy"); 

    If not TicketDate = Today { 
    sheet.getRange("C1").setValue(new Date()).setNumberFormat("dd/mm/yyyy"); 
    sheet.getRange("B1").setvalue(0); 
    } 
} 

Das ist alles neu für mich so meine Entschuldigung, wenn dies einfach. Die einzige Codierung, die ich jemals gemacht habe, war einfache VBA, also weiß ich nicht einmal was == bedeutet.

+0

versuchen ersetzen 'Wenn nicht TicketDate = Today' mit' if (TicketDate! = Heute) ' –

+0

Das wurde es, so tut! = meinst du nicht gleich? Vielen, vielen Dank!! – Glib

Antwort

1

können Sie versuchen, diese Funktion

function onOpen(e) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheetByName("Create Ticket"); 
    var TicketCount = sheet.getRange('B1').getValue(); 
    var TicketDate = Utilities.formatDate(new Date(sheet.getRange("C1").getValue()),Session.getScriptTimeZone(),"dd/MM/yyyy"); 
    var Today = Utilities.formatDate(new Date(), Session.getScriptTimeZone(),"dd/MM/yyyy"); 
    if(TicketDate != Today) { 
    sheet.getRange("C1").setValue(Utilities.formatDate(new Date(), Session.getScriptTimeZone(),"dd/MM/yyyy")); 
    sheet.getRange("B1").setValue(0); 
    } 
} 

Seien Sie vorsichtig, da in Ihrem Code gibt einige Tippfehler Fehler. setvalue => setValue getvalue => getValue

Dies führt zu einem Fehler.

Um Format Datum können Sie verwenden Utilities.formatDate()

Stéphane

+0

Du bist ein Star Steph. Der Code fällt in der letzten Zeile (versucht, Nummer 0 in Zelle zu bekommen), aber ich hätte diese Datumsformatierung nie selbst gefunden. Vielen Dank! – Glib

+0

Kein Fehler auf meiner Seite für das Hinzufügen von 0 zu B1. – St3ph

+0

Das liegt daran, dass ich die Tippfehler geändert habe und ich SetValue anstelle von setValue geändert habe. Danke nochmal für die Hilfe. – Glib

Verwandte Themen