Pular para o conteúdo
officetuning.aiofficetuning.ai
TreinamentosConsultoriaBibliotecaFerramentasConteúdoPortfólio
Entrar
officetuning.aiofficetuning.ai

Treinamento, consultoria e mentoria para decidir, construir e aprender nas quatro frentes da marca.

AI · Data · Productivity · Dev · São Paulo
contato@officetuning.ai
TreinamentosPower BIExcelSQLPowerPointIA + ProdutividadeTodos os treinamentos
PortalConsultoriaBibliotecaPortfólioBackground BuilderDashboard CanvasConteúdo
InstitucionalPolítica de privacidadeInformações legais
© 2026 officetuning.ai · São Paulo
  1. Biblioteca
  2. Power Query (M)
  3. UDFs M
  4. fnRemoveAcentos

fnRemoveAcentos

MTexto

Remove acentos de letras latinas por uma tabela fixa de substituição.

Sintaxe

M
fnRemoveAcentos(texto as nullable text) as nullable text

Parâmetros

textonullable textObrigatório

Texto com acentos.

Tipo de retorno

nullable text

Exemplos

M
fnRemoveAcentos("São João d’Ávila")
// "Sao Joao d’Avila"

fnRemoveAcentos("Straße")
// "Straße"  (fora da tabela: não muda)

Código completo

M
let
    fnRemoveAcentos = (texto as nullable text) as nullable text =>
        let
            vDe   = "ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØÙÚÛÜÝàáâãäåçèéêëìíîïñòóôõöøùúûüýÿŠšŽžŸ",
            vPara = "AAAAAACEEEEIIIINOOOOOOUUUUYaaaaaaceeeeiiiinoooooouuuuyySsZzY",
            vPares = List.Zip({Text.ToList(vDe), Text.ToList(vPara)})
        in
            if texto = null then null
            else Text.Combine(List.ReplaceMatchingItems(Text.ToList(texto), vPares)),

    Documentacao = [
        Documentation.Name = "fnRemoveAcentos",
        Documentation.Description = "Remove acentos de letras latinas por uma tabela fixa de substituição.",
        Documentation.LongDescription = "Cada caractere de vDe é trocado pelo caractere na mesma posição de vPara. Caracteres fora da tabela não mudam. O resultado não depende da página de código do computador.",
        Documentation.Category = "Texto",
        Documentation.Author = "Paulo André Jesus",
        Documentation.Version = "2.0",
        Documentation.Examples = {
            [Description = "Texto em português", Code = "fnRemoveAcentos(""São João d’Ávila"")", Result = """Sao Joao d’Avila"""],
            [Description = "Caractere fora da tabela", Code = "fnRemoveAcentos(""Straße"")", Result = """Straße"""]
        }
    ]
in
    Value.ReplaceType(fnRemoveAcentos, Value.ReplaceMetadata(Value.Type(fnRemoveAcentos), Documentacao))

Observações

O resultado não depende da página de código do computador nem do Service. Atenção O atalho Text.FromBinary(Text.ToBinary(texto, 1251), ...) não é documentado pela Microsoft e troca caracteres como – e € por ? ou �.

Mais informações

Fonte
Paulo André Jesus — OfficeTuning
Versão
2.0
Referência
https://learn.microsoft.com/pt-br/powerquery-m/list-replacematchingitems
AnteriorfnNuvemDePalavrasPróxima fnTelefoneAnonimo
Biblioteca