跳到主要内容

查找无效邮箱

检测并高亮显示指定列或整个工作表中的无效邮箱地址。

(function () {
let sheet = Api.GetActiveSheet();
let range = sheet.GetUsedRange();

let emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
let red = Api.CreateColorFromRGB(255, 163, 163);
// 指定列索引(从 0 开始),或保留为 null 以检查整个工作表。
let colIndex = 1;

let numRows = range.GetRows().Count;
let numCols = range.GetCols().Count;

if (colIndex !== null) {
for (let row = 0; row < numRows; row++) {
let cell = sheet.GetRangeByNumber(row, colIndex);
let value = cell.GetValue();

if (!value) {
continue;
}

let trimmedValue = value.toString().trim();
if (trimmedValue && !emailRegex.test(trimmedValue)) {
cell.SetFillColor(red);
}
}
} else {
for (let row = 0; row < numRows; row++) {
for (let col = 0; col < numCols; col++) {
let cell = sheet.GetRangeByNumber(row, col);
let value = cell.GetValue();

if (!value) {
continue;
}

let trimmedValue = value.toString().trim();
if (trimmedValue && !emailRegex.test(trimmedValue)) {
cell.SetFillColor(red);
}
}
}
}
})();

使用方法:获取当前工作表获取已使用范围创建RGB颜色获取行数获取列数按编号获取范围获取范围值设置填充颜色

结果

查找无效邮箱 查找无效邮箱