Baixe a apostila de exemplo
Este Tutorial do Excel demonstra como usar o Função Excel MOD para calcular o resto após a divisão.
Visão geral da função MOD
A função MOD retorna o resto, ou módulo, de um número após realizar a divisão. No entanto, a função MOD não é estritamente para nos ajudar com nossos problemas de divisão. Ele se torna ainda mais poderoso quando queremos procurar cada enésimo item em uma lista ou quando precisamos gerar um padrão de repetição.
Para usar a função de planilha do MOD Excel, selecione a célula e digite:
Sintaxe e entradas da função MOD:
1 | = MOD (número, divisor) |
número - Um número.
divisor - Um número pelo qual dividir.
Qual é a função MOD?
A função MOD retorna o resto, ou módulo, de um número após realizar a divisão. No entanto, a função MOD não é estritamente para nos ajudar com nossos problemas de divisão. Ele se torna ainda mais poderoso quando queremos procurar cada enésimo item em uma lista ou quando precisamos gerar um padrão de repetição.
MOD Matemática Básica
Ao tentar dividir 13 por 4, você pode dizer que a resposta é 3 resto 1. O “1” neste caso é especificamente conhecido como módulo (daí o nome da Função MOD). Em uma fórmula, então, poderíamos escrever
1 | = MOD (13, 4) |
E a saída seria 1.
Olhando para esta tabela dá mais algumas ilustrações de como a entrada / saída do MOD funcionará.
1 | = MOD (A2,3) |
Observe que quando a entrada era 3, não havia resto e, portanto, a saída da fórmula era 0. Além disso, em nossa tabela usamos a função ROW para gerar nossos valores. Muito do poder do MOD virá do uso da função ROW (ou COLUMN), como veremos nos exemplos a seguir.
MOD Soma todas as outras linhas
Considere esta tabela:
Para fins de ilustração, a segunda coluna tem a fórmula
1 | = MOD (A2, 2) |
Para adicionar todas as linhas pares, você pode escrever uma fórmula SOMASE e fazer com que os critérios procurem valores 0 na coluna B. Ou, para adicionar todas as linhas ímpares, faça com que os critérios sejam procurar 1 valor.
No entanto, não precisamos criar a coluna auxiliar. Você pode combinar o poder do MOD no SUMPRODUCT para fazer tudo em uma única etapa. Nossa fórmula para isso seria
1 | = SUMPRODUCT (A2: A5, - (MOD (B2: B2, 2) = 0) |
Como está dentro do SUMPRODUCT, a função MOD será capaz de lidar com nossa entrada de array. Já vimos a saída na coluna auxiliar, mas a matriz de nosso MOD nesta fórmula será {0, 1, 0, 1}. Após verificar os valores iguais a 0 aplicando o unário duplo, a matriz será {1, 0, 1, 0}. O SUMPRODUCT então faz sua mágica ou multiplica as matrizes para produzir {2, 0, 4, 0} e, em seguida, soma para obter a saída desejada de 6.
MOD Soma a cada enésima linha
Uma vez que uma fórmula de MOD (x, N) produzirá um 0 a cada enésimo valor, podemos usar isso para ajudar as fórmulas a selecionar e escolher quais valores usar em outras funções. Olhe para esta mesa.
Nosso objetivo é obter os valores de cada linha marcada como “Total”. Observe que o Total aparece a cada 3rd linha, mas começando na linha 4. Nossa função MOD, portanto, usará 3 como o 2WL argumento, e precisamos subtrair 1 do primeiro argumento (uma vez que 4 -1 = 3). Desta forma, as linhas desejadas que queremos (4, 7, 10) serão múltiplos de 3 (3, 6, 9). Nossa fórmula para somar os valores desejados será
1 | = SUMPRODUCT (C2: C10, - (MOD (ROW (A2: A10) +2, 3) = 0)) |
A matriz produzida se transformará assim:
12345 | {2, 3, 4, 5, 6, 7, 8, 9, 10}{1, 2, 3, 4, 5, 6, 7, 8, 9}{1, 2, 0, 1, 2, 0, 1, 2, 0}{False, False, True, False, False, True, False, False, True}{0, 0, 1, 0, 0, 1, 0, 0, 1} |
A matriz de critérios do nosso SUMPRODUCT agora está configurada como precisamos para pegar a cada 3rd valor e obteremos o resultado desejado de $ 90.
Soma MOD nas colunas
Temos usado exemplos até agora que vão verticalmente e usam ROW, mas você também pode ir horizontalmente com a função COLUMN. Considere este layout:
Queremos resumir todos os itens. Nossa fórmula para isso poderia ser
1 | = SUMPRODUTO (B2: E2 * (MOD (COLUNA (B2: E2), 2) = 0) |
Neste caso, estamos configurados para capturar a cada 2WL coluna dentro do nosso intervalo, então o SUMPRODUCT irá reter apenas valores diferentes de zero para as colunas B e D. Para referência, aqui está uma tabela que mostra os números das colunas e seus valores correspondentes após tomar o MOD 2.
Destaque cada enésima linha
Outro lugar comum para usar a função MOD é quando você deseja que uma linha destacada apareça a cada enésima linha. A forma geral para isso será
1 | = MOD (ROW () ± Offset, N) = 0 |
Onde N é o número de linhas entre cada linha destacada (ou seja, para destacar a cada 3rd linha, N = 3), e Desvio é opcionalmente o número que precisamos adicionar ou subtrair para que nossa primeira linha destacada se alinhe com N (ou seja, para destacar a cada 3rd linha, mas começar na linha 5, precisaríamos subtrair 2, pois 5 -2 = 3). Observe que com a função ROW, ao omitir quaisquer argumentos, ela retornará o número da linha da célula em que a fórmula está.
Vamos usar nossa mesa de antes:
Para aplicar um destaque a todas as linhas do total, criaremos uma nova regra de formatação condicional com uma fórmula de
1 | = MOD (ROW () - 1, 3) = 0 |
Quando a formatação condicional aplicar esta fórmula, a linha 2 verá
1234 | = MOD (2-1, 3) = 0= MOD (1, 3) = 0= 1 = 0= Falso |
A linha 3 terá uma saída semelhante, mas a linha 4 verá
1234 | = MOD (4-1, 3) = 0= MOD (3, 3) = 0= 0 = 0= Verdadeiro |
Portanto, temos nossa regra funcionando corretamente, conforme mostrado aqui:
Destacar números inteiros ou pares
Em vez de destacar linhas específicas, você também pode verificar os valores reais nas células. Isso pode ser útil quando você deseja encontrar números múltiplos de N. Por exemplo, para encontrar múltiplos de 3, sua fórmula de formato condicional seria
1 | = MOD (A2, 3) = 0 |
Até este ponto, lidamos com números inteiros. Você pode inserir um decimal (por exemplo, 1.234) e, em seguida, dividir por 1 para obter apenas a parte decimal (por exemplo, 0,234). Esta fórmula parece
1 | = MOD (A2, 1) |
Sabendo disso, para destacar apenas inteiros, a fórmula do formato condicional seria
1 | = MOD (A2, 1) = 0 |
Concatene cada N células
Anteriormente, usamos o MOD para dizer ao computador quando pegar o valor em cada enésimo item. Você também pode fazer com que seja usado para acionar uma fórmula maior a ser executada. Considere este layout:
Queremos concatenar os nomes, mas apenas a cada 3rd linha começando na linha 2. A fórmula usada para isso é
1 | = SE (MOD (LINHA () + 1, 3) = 0, CONCATENAR (A2, "", A3, "", A4), "") |
Nossa função MOD é o que atua como o critério para a função geral do IF. Neste exemplo, precisamos adicionar 1 ao nosso ROW, porque estamos começando na linha 2 (2 + 1 = 3). Quando a saída do MOD é 0, a fórmula faz a concatenação. Caso contrário, retorna apenas em branco.
Contar valores pares / ímpares
Se você já precisou contar quantos valores pares ou ímpares estão em um intervalo, você saberá que COUNTIF não tem a capacidade de fazer isso. Podemos fazer isso com MOD e SUMPRODUCT. Vejamos esta tabela:
A fórmula que usaremos para encontrar os valores ímpares será
1 | = SUMPRODUTO (1 * (MOD (A2: A7, 2) = 1)) |
Em vez de carregar em alguns números de linha, nosso MOD carregará os valores reais das células na matriz. A transformação geral irá progredir assim:
1234 | {5, 5, 3, 3, 2, 1}{1, 1, 1, 1, 0, 1} <- Aceitou o mod de 2{Verdadeiro, Verdadeiro, Verdadeiro, Verdadeiro, Falso, Verdadeiro} <- verificado se o valor era 0{1, 1, 1, 1, 0, 1} <- Multiplicado por 1 para converter de Verdadeiro / Falso para 1/0 |
O SUMPRODUCT então soma os valores em nosso array, dando a resposta desejada de: 5.
Padrão de repetição
Todos os exemplos anteriores verificaram a saída do MOD para um valor. Você também pode usar o MOD para gerar um padrão de repetição de números, o que pode ser muito útil.
Primeiro, digamos que temos uma lista de itens que queremos repetir.
Você pode tentar copiar e colar manualmente quantas vezes precisar, mas isso se tornaria tedioso. Em vez disso, queremos usar a função INDEX para recuperar nossos valores. Para o INDEX funcionar, precisamos que o argumento da linha seja uma sequência de números que vai {1, 2, 3, 1, 2, 3, 1, etc.}. Podemos fazer isso usando MOD.
Primeiro, vamos começar apenas com a função ROW. Se você começar com
1 | = ROW (A1) |
E, em seguida, copie para baixo, você obtém a sequência numérica básica de {1, 2, 3, 4, 5, 6,…}. Se aplicássemos a função MOD com 3 como divisor,
1 | = MOD (ROW (A1), 3) |
obteríamos {1, 2, 0, 1, 2, 0,…}. Vemos que temos um padrão de repetição de "0, 1, 2", mas a primeira série está faltando o 0. Para corrigir isso, volte um passo e subtraia 1 do número da linha. Isso mudará nossa sequência inicial para {0, 1, 2, 3, 4, 5,…}
1 | = MOD (ROW (A1) -1, 3) |
E depois que sai do MOD, temos {0, 1, 2, 0, 1, 2,…}. Isso está chegando perto do que precisamos. A última etapa é adicionar 1 ao array.
1 | = MOD (ROW (A1) -1, 3) +1 |
Que agora produz uma sequência numérica de {1, 2, 3, 1, 2, 3,…}. Esta é a nossa sequência desejada! Conectando-o a uma função INDEX, obtemos nossa fórmula de
1 | = INDEX (MyList, MOD (ROW (A1) -1, 3) +1) |
A saída agora será semelhante a esta:
Exemplos MOD em VBA
Você também pode usar a função PROJ.LIN no VBA.
Dentro do VBA, MOD é um operador (assim como os operadores de mais, menos, multiplicação e divisão). Portanto, executar as seguintes instruções VBA
123456 | Faixa ("C2") = Faixa ("A2") Faixa Mod ("B2")Faixa ("C3") = Faixa ("A3") Faixa do Mod ("B3")Faixa ("C4") = Faixa ("A4") Faixa Mod ("B4")Faixa ("C5") = Faixa ("A5") Faixa do Mod ("B5")Faixa ("C6") = Faixa ("A6") Faixa Mod ("B6")Faixa ("C7") = Faixa ("A7") Faixa Mod ("B7") |
irá produzir os seguintes resultados
Para os argumentos da função (known_y’s, etc.), você pode inseri-los diretamente na função ou definir as variáveis a serem usadas.
Voltar para a lista de todas as funções no Excel
Função MOD do Planilhas Google
A função MOD funciona exatamente da mesma forma no Planilhas Google e no Excel: