Blog
LET – Nomes em fórmulas – geralmente disponíveis
No início deste ano, anunciamos o lançamento de uma nova função, LET, que permite dar nomes a cálculos ou expressões em suas fórmulas ( Anunciando LET ). No início deste mês, a função LET agora está disponível para o público de produção!
Obrigado a todos os nossos insiders por usar a função LET e nos fornecer feedback! Como resultado, fizemos algumas alterações que descreveremos a seguir. Além disso, gostaríamos de compartilhar algumas práticas recomendadas a serem consideradas ao usar a função ou escrever fórmulas em geral!
Acessando LET Today
Para obter acesso ao LET, certifique-se de ter atualizado para a versão mais recente do Excel.
LET está disponível para assinantes do Excel com Office 365 ou Microsoft 365. O recurso está atualmente disponível no Canal Atual em todas as plataformas e geralmente na web.
Especificamente, versões do Excel maiores ou iguais a:
- Windows: Versão 2009 (Compilação 13231.20262)
- Mac: Versão 16.42 (20101102)
Qual versão do Office estou usando?
Alterações feitas em LET
1. Preenchimento automático de nomes
Adicionamos uma melhoria na qualidade de vida em que o preenchimento automático tornará nomes de casos especiais definidos por um LET com um ícone e uma entrada exclusivos.
No exemplo a seguir, você pode ver o ícone especial indicando que você pode preencher automaticamente sua fórmula com o nome contagem :
= LET (contagem, 123, contagem |
2. Nomes permitidos
“.” não é mais um caractere legal em nomes vinculados a um LET. Se você tiver uma pasta de trabalho pré-existente que contenha um “.” em seu nome, será silenciosamente atualizado para um nome legal.
A razão para essa mudança foi devido a conflitos que poderiam ocorrer dentro da “notação de ponto” para desreferenciando Tipos de Dados .
Para saber mais sobre quais nomes são permitidos, consulte o tópico da Ajuda para LET .
3. Alterações de localização
Graças ao feedback da comunidade, removemos a localização para a função LET. LET é o nome da função em todos os SKUs do Excel e não localizado.
Melhores práticas ao criar fórmulas
Com a adição de LET, existem algumas novas melhores práticas que consideramos úteis ao criar fórmulas, em geral e com LET. Adoraríamos ouvir mais de você se houver outras práticas recomendadas que você tenha empregado!
Exemplo de cenário: conversão e formatação de valores de temperatura
Para os exemplos abaixo, fique à vontade para acompanhar e experimentar você mesmo com os dados de amostra incluídos. O exemplo LET preenche os valores na coluna Fahrenheit
Dia |
Celsius |
Fahrenheit |
1º de janeiro |
4,68 |
|
2 de janeiro |
4,49 |
|
3 de janeiro |
4,4 |
|
4 de janeiro |
4,71 |
Quebras de linha
Em versões para desktop do Excel, você pode adicionar quebras de linha às fórmulas usando o atalho “ALT + Enter” durante a criação. Gostamos de fazer uso desta funcionalidade e adicionar um recuo adicional de espaço em branco, pressionando a “barra de espaço” 5 vezes, para ajudar a tornar a fórmula mais fácil de ler ao definir nomes.
Fórmula sem quebras de linha
= LET (Celsius, B2: B5, ConversionFactor, 9/5, FValue, (Celsius * ConversionFactor) +32, FValueRounded, ROUND (FValue, 2), FValueRounded & “° F”) |
Fórmula com quebras de linha e espaçamento branco
= LET (CelsiusValue, B2: B5, ConversionFactor, 9/5, FValue, (CelsiusValue * ConversionFactor) +32, FValueRounded, ROUND (FValue, 2), FValueRounded e “° F” ) |
Documentando sua lógica
A fórmula que criamos não se beneficia de nenhum ganho de desempenho ao usar um LET. No entanto, ele obtém melhorias ao documentar a intenção da fórmula e o que cada cálculo individual faz. Isso facilita a depuração de expressões mais complexas e permite que você documente seu trabalho com mais facilidade.
Considere a fórmula acima mencionada sem LET
= ROUND ((B2: B5 * 9/5) +32,2) e “° F” |
Embora seja verdade que a fórmula acima é mais curta, ela não faz um bom trabalho de transmitir a intenção do cálculo. Com um LET, é muito mais fácil entender todos os componentes e transformações individuais pelos quais o valor passa quando é convertido. Basta ler a fórmula, linha por linha.
= LET (CelsiusValue, B2: B5, ConversionFactor, 9/5, FValue, (CelsiusValue * ConversionFactor) +32, FValueRounded, ROUND (FValue, 2), FValueRounded e “° F” ) |
Fórmulas de depuração e atualização
O último grande benefício que LET fornece é a depuração e / ou atualização de suas fórmulas. Vamos pegar o exemplo anterior e imaginar, enquanto criamos a fórmula, chegamos a um estado em que temos o valor Fahrenheit calculado e queremos simplesmente acrescentar “° F” ao final.
A fórmula pode ser parecida com esta:
= LET (CelsiusValue, B2: B5, ConversionFactor, 9/5, FValue, (CelsiusValue * ConversionFactor) +32, FValueRounded, ROUND (FValue, 2), FValueRounded e “° F” ) |
Esta fórmula funcionará bem, mas imediatamente percebemos que há muitos dígitos significativos em nosso resultado:
Fahrenheit |
40,424 ° F |
40,082 ° F |
39,92 ° F |
40,478 ° F |
Neste ponto, tudo o que é necessário fazer é arredondar o valor e então atualizamos a fórmula:
= LET (CelsiusValue, B2: B5, ConversionFactor, 9/5, FValue, ((CelsiusValue * ConversionFactor) +32) e “° F”, ROUND (FValue, 2) ) |
Em seguida, encontramos um problema porque de repente recebemos #VALUE! como resultado …
Tudo bem, no entanto. Com LET, podemos ver mais facilmente onde o erro está ocorrendo testando diferentes partes da fórmula.
Separando FValue , que parece ser a origem do erro, podemos retornar FValue e ver o que está sendo alimentado na função ROUND:
= LET (CelsiusValue, B2: B5, ConversionFactor, 9/5, FValue, ((CelsiusValue * ConversionFactor) +32) e “° F”, resultado, ROUND (FValue, 2), FValue ) |
É claro que isso retornará os resultados anteriores que vimos antes:
Fahrenheit |
40,424 ° F |
40,082 ° F |
39,92 ° F |
40,478 ° F |
Dependendo de suas habilidades de criação de fórmula e proficiência com depuração de erros de fórmula, o problema pode surgir imediatamente para você: O problema é que estamos retornando uma string e a função ROUND espera um número.
No entanto, se não for imediatamente óbvio, você pode depurar ainda mais a instrução reescrevendo o LET para retornar os vários componentes de FValue : CelsiusValue e ConversionFactor . Ambos retornarão números, o que significa que o erro está na expressão que define FValue .
A linha problemática é claramente o acréscimo de “° F”: & “° F” e tudo o que é necessário fazer é acrescentar o valor após o arredondamento que nos dará a fórmula final:
= LET (CelsiusValue, B2: B5, ConversionFactor, 9/5, FValue, ((CelsiusValue * ConversionFactor) +32), resultado, ROUND (FValue, 2) e “° F”, resultado ) |
Embora o acima seja válido, uma última dica seria simplesmente adicionar outro nome para a conversão de string, caso você queira adicionar uma instrução IF que retorna um valor não formatado e formatado para Fahrenheit com base em uma condição no futuro .
= LET (CelsiusValue, B2: B5, ConversionFactor, 9/5, FValue, ((CelsiusValue * ConversionFactor) +32), FValueRounded, ROUND (FValue, 2), FValueStringAppended, FValueRounded & “° F”, FValueStringAppended ) |
Saiba mais
Para saber mais sobre o LET, consulte nosso artigo de ajuda e, enquanto isso, estamos ansiosos para ouvir mais sobre as maneiras como você tem usado o LET em suas pastas de trabalho!
Notas de disponibilidade
LET agora está disponível para assinantes do Excel de Office 365 ou Microsoft 365 no Canal Atual de Produção .
Para ficar conectado ao Excel e sua comunidade, leia as postagens do blog do Excel e envie-nos ideias e sugestões por meio do UserVoice . Você também pode usar o Excel em Facebook e Twitter .
Chris Gross
Gerente de programa, Excel
Artigo originalmente postado em Excel Blog