免責事項として、私はプログラミングの概念を新しく考えています。あなたが本当に私の親友になりたければ、より具体的な説明が良いでしょう。しかし、どんな助けもありがたいです。Script Appを使用してGoogleシート内のセルから日付を取り出す
私のごく小さなビジネスでは、給与計時にQuickBooksを使用していますが、ロジスティクス目的で従業員にはGoogleスプレッドシートを使用して時間を入力させていただいています。
(私が設定したトリガーごとに)日付の最初の列を1日2回チェックするスクリプトを作成したいと思います。日付が今日の日付と等しいかそれよりも大きい場合は、同じ行のいくつかの列をチェックして、セルが記入されているかどうかを確認するスクリプトが必要です。 0またはnullの場合、通知を送信したい。
参考までに下の図をご覧ください。
これまでのところ、これは私が持っているものである。この時点で
function values2()
{
var ss = SpreadsheetApp.getActiveSpreadsheet(),
sheet = ss.getSheetByName("TimeSheet"),
range = sheet.getDataRange(),
values = range.getValues(),
indx, logToday, today, body,
recipients = "[email protected]",
subject = "Timesheet Notification" + ss.getName();
//Finds current date and creates string. I would prefer to have a numeric value associated to the current date, as well as a numeric value associated with the date for each row.
var CurrentDate = new Date();
Logger.log(CurrentDate);
logToday = Logger.getLog();
indx = logToday.indexOf("INFO");
today = logToday.substring(indx + 6, indx + 16);
//I'm having things sent to my email for test purposes
MailApp.sendEmail(recipients, subject, today);
//Clears Log
Logger.clear();
for (var r=1; r<values.length; r++)
{
var row = values[r],
date = row[0],
price = row[1],
units = row[2],
total = row[3],
name = row[4];
Logger.log(date);
Logger.log(price);
Logger.log(units),
Logger.log(total),
Logger.log(name);
}
body = Logger.getLog();
MailApp.sendEmail(recipients, subject, body);
}
、私は最初の列から各日付をキャッチできるようにしたい、今日の日付と比較し、チェック同じ行の別のセルに移動し、最初の列の次の日付に移動します。私はIF/Elseの文章で遊んだことがあるが、役に立たない。
あなたの試行錯誤を見せてください。 –