Como usar: Fórmula Excel para Python
- Cole uma fórmula do Excel ou do Google Sheets, ou escolha uma em Exemplos.
- Escolha a linguagem de destino. A página começa com Python, e você pode trocar a qualquer momento.
- Renomeie as referências de célula detectadas para nomes de variáveis significativos, por exemplo
B2→preco. - Escolha uma função completa ou apenas a expressão e depois copie ou baixe o código. As funções auxiliares são adicionadas automaticamente quando a fórmula precisa delas.
Levando a lógica de planilhas para o Python
Equipes de dados reconstruem com frequência modelos do Excel em Python, seja para automatizar um relatório mensal, alimentar um pipeline com pandas ou mover um cálculo para trás de uma API. Redigitar fórmulas é lento e arriscado, porque Python e Excel divergem em detalhes como arredondamento e comparação de texto. Este conversor analisa a fórmula com as regras de precedência do próprio Excel e gera um Python equivalente e legível.
=SUMIFS(D2:D100, B2:B100, "North", C2:C100, ">=1000")
def calculate(d2_d100, b2_b100, c2_c100):
return sum_ifs(d2_d100, b2_b100, 'North', c2_c100, '>=1000')
O helper sum_ifs() (e a função matches_criteria() que ele usa) é incluído acima da função, então a saída roda do jeito que está.
Como as funções do Excel se traduzem para Python
| Excel | Python |
|---|---|
IF(c, a, b) | a if c else b |
IFS / SWITCH | chained conditional expressions |
AND, OR, NOT | and, or, not |
= and <> | == and != |
a & b | str(a) + str(b) |
a ^ b | a ** b |
SUM(A2:A10) | sum(a2_a10) |
ROUND(x, 2) | excel_round() helper — not round() |
MOD(a, b) | a % b |
SUMIFS / COUNTIF… | sum_ifs(), count_if() helpers |
VLOOKUP / XLOOKUP | vlookup(), xlookup() helpers |
IFERROR(x, y) | if_error(lambda: x, y) |
LEFT / MID / LEN | slicing, len() |
TODAY() / NOW() | date.today(), datetime.now() |
Armadilhas que o conversor trata
- Arredondamento bancário. O
round(2.5)do Python retorna 2 e oround(0.125, 2)retorna 0.12; o Excel dá 3 e 0.13. A saída usa um helperexcel_round()baseado emDecimalcomROUND_HALF_UP. - Concatenação.
"Total: " + 5gera umTypeErrorem Python, então todo operando não textual de&é envolvido emstr(). - IF é uma expressão. O
IFvira a expressão condicional do Python (a if c else b), e IFs aninhados se encadeiam naturalmente. - Divisão inteira. O
/do Python 3 sempre retorna um float, igual ao Excel. - Erros.
IFERRORviraif_error(lambda: …, fallback), que capturaZeroDivisionError,LookupErrorde buscas e outras exceções. - Datas.
DATE,TODAYeYEARsão mapeados para o módulodatetime. O Excel aceita datas inválidas e ajusta (mês 13); o Python gera um erro, e o conversor avisa você.
Trabalhando com pandas
As funções geradas trabalham com valores únicos e listas. Para aplicar uma fórmula linha a linha em um DataFrame, chame-a com df.apply(lambda r: calculate(r.price, r.qty), axis=1); para agregados como SUMIFS, máscaras booleanas do pandas (df.loc[(df.region == 'North') & (df.total >= 1000), 'amount'].sum()) são mais rápidas em dados grandes.
Funções suportadas: IF, IFS, SWITCH, AND, OR, NOT, XOR, IFERROR, IFNA, ISBLANK, ISNUMBER, ISTEXT, SUM, AVERAGE, MIN, MAX, COUNT, COUNTA, COUNTBLANK, PRODUCT, MEDIAN, ROUND, ROUNDUP, ROUNDDOWN, INT, TRUNC, ABS, SIGN, MOD, POWER, SQRT, EXP, LN, LOG, LOG10, PI, CEILING, FLOOR, RAND, RANDBETWEEN, SUMIF, SUMIFS, COUNTIF, COUNTIFS, AVERAGEIF, AVERAGEIFS, SUMPRODUCT, VLOOKUP, XLOOKUP, MATCH, INDEX, CONCAT, CONCATENATE, TEXTJOIN, LEFT, RIGHT, MID, LEN, UPPER, LOWER, PROPER, TRIM, SUBSTITUTE, REPLACE, FIND, SEARCH, REPT, VALUE, EXACT, TEXT (formatos de número), TODAY, NOW, DATE, YEAR, MONTH, DAY. Carregue a própria planilha com Excel para JSON e json.load().
Também pesquisado como: converter fórmula excel em python, excel para python, fórmula do excel em python, google sheets para python, fórmula de planilha para python, procv em python, converter excel para código python.
Ferramentas que combinam com: Fórmula Excel para Python
- Fórmula Excel para JavaScript — Cole uma fórmula de planilha e receba JavaScript legível: uma função com parâmetros nomeados, precedência de operadores correta e pequenas funções auxiliares para o que o JavaScript não tem, como SUMIFS e VLOOKUP.
- Conversor de Fórmula Excel para SQL — Cole uma fórmula do Excel e receba a expressão SQL equivalente ou uma consulta SELECT — IF e IFS como CASE WHEN, SUMIFS e COUNTIFS como agregações condicionais, e as funções de texto e data certas para o seu banco.
- Fórmula Excel para PHP — Cole uma fórmula de planilha e receba uma função PHP 8: ternários entre parênteses, funções de string mb_* e auxiliares para buscas, somas condicionais e MOD no estilo do Excel.
- CSV para JSON — Cole um CSV ou TSV e receba um array JSON de objetos.
Perguntas frequentes
Por que a saída usa excel_round() em vez de round()?
round(2.5) dá 2. O Excel arredonda a metade para longe do zero. O helper reproduz o Excel com exatidão.Funciona com DataFrames do pandas?
.tolist() ou aplique uma função linha a linha com df.apply(…, axis=1).Como o VLOOKUP é traduzido?
vlookup(value, table, column, approximate), em que a tabela é uma lista de linhas. A correspondência exata (FALSE) compara texto sem diferenciar maiúsculas e minúsculas, como o Excel, e um valor ausente gera um LookupError, que o IFERROR captura.