一つ上へ
function checkDigit() {
var spreadsheet = SpreadsheetApp.openById("シートID");
var sheet = spreadsheet.getSheetByName("checkdigit"); // checkdigitのシートを指定する
var values = sheet.getRange(2,1,sheet.getLastRow()-1,1).getValues(); // A2から最後の行までのデータを読み込む。
var writeCell = sheet.getRange("B2"); // 書き込みするセルを指定
for (num of values) {
var oddSum = 0;
var evenSum = 0;
let maxdigits = num.toString().length; /* 桁数を取得 */
var digit = num.toString().split("") // 分割
/* 奇数番目の数字の和を計算 */
/* 偶数番目の数字の和x33を計算 */
for (let i=0; i < maxdigits; i++) {
if ((i+1) % 2 == 0) {
evenSum += parseInt(digit[i]); // 偶数番目の和を計算
} else {
oddSum += parseInt(digit[i]); // 奇数番目の和を計算
}
}
/* 33*evenSum + oddSum の mod 10 を計算 */
var checkDigit = 10 - (33*evenSum + oddSum) % 10
if (checkDigit < 10) {
var janCode = digit.join("") + checkDigit.toString()
} else {
var janCode = digit.join("") + "0"
}
writeCell.setValue(janCode);
writeCell = writeCell.offset(1,0)
}
}