1

我将个人姓名导入到我的电子表格中,每次导入我都会得到不同的名字。为了匹配过去的保存名称并找出这个新导入中是否已经存在任何名称,他们帮助我创建了一种从单词中删除变音符号并保存在column E. 示例→(使用单个公式删除所有没有脚本的变音符号,以便在所有单元格中使用,而无需调用 Google API

这些名称仅使用巴西键盘常用字母的字母表进行注册。

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

但是当我导入这些数据时,例如瑞典名字带有各种口音和奇怪的字母。我想创建一个公式,Column B它可以找到所有Column A在我的键盘上具有除常用字母之外的任何字母的名称。如果存在,则出现,如果不存在,则不出现。

像这样:

Fabio        João
Lucas        Caçandrà
João         Sølskjaer
Caçandrà     Alemão
Sølskjaer
Alemão

如果只出现不同的字母就更好了,像这样:

Fabio        ã
Lucas        çà
João         ø
Caçandra     ã
Sølskjaer
Alemão

如果每个名字中有多个不同的字母,两个变音符号不会出现在一个单元格中,总是出现在下面的一个单元格中,如下所示:

Fabio        ã
Lucas        ç
João         à
Caçandra     ø
Sølskjaer    ã
Alemão

我相信使用将通过一个FILTER函数,但因为我需要相反(包含来自常见字母表的不同值的单词,我无法组装)。

这样,我可以创建一个脚本,每当我在导入时发现不同的名称时,它都会将其注册到 a 中Column J,这样我就可以在列表中看到并注册这个新的变音符号,如下所示:

for (var i = 1; i < 100; i++) {

  var cel = "B"+ i //

  if (sheet.getRange(cel).getValue() != "")  {   

    for (var u = 1; u < 1000; u++) {
      var cel2 = "J"+ u //

      if (sheet.getRange(cel2).getValue() == "")  { 

        sheet.getRange("J"+u).setValue(sheet.getRange(cel).getValue());
        break;
      }
    }
  }
};
4

1 回答 1

0
=ARRAYFORMULA(IFERROR(REGEXEXTRACT(A1:A, "[^(A-Za-z)]")))

0


=ARRAYFORMULA(TRANSPOSE(REGEXEXTRACT(
 TEXTJOIN(, 1, IFERROR(REGEXEXTRACT(A1:A, "[^(A-Za-z)]+"))), REPT("(.)", LEN(
 TEXTJOIN(, 1, IFERROR(REGEXEXTRACT(A1:A, "[^(A-Za-z)]+"))))))))

0

于 2019-09-27T20:29:37.487 回答