Caso você esteja se perguntando como alguém pode encontrar cada enésimo item em uma coluna. Neste artigo, aprenderemos como retornar cada n-ésimo item de uma lista. Usaremos o código VBA para encontrar o resultado.
Pergunta: Eu quero um código de macro para extrair cada valor enésimo de uma coluna. Estou tentando extrair valores de uma folha / coluna para outra folha / coluna. Tentei usar muitas funções como OFFSET, mas não consegui descobrir a fórmula que pode dar o resultado.
Vamos dar um exemplo de 100 valores na coluna A e queremos descobrir a cada 10º valor na coluna B
Os valores de amostra a partir da célula A1 igual a 1 até a célula A100 igual a 100; a seguir está o instantâneo dos dados na coluna A:
Para obter o resultado, precisamos seguir as etapas abaixo para iniciar o editor VB
- Clique na guia Desenvolvedor
- No grupo Código, selecione Visual Basic
- Copie o código abaixo no módulo padrão
Função INDEXN (InputRange As Range, N As Integer) As Variant 'retorna cada N-ésimo item de InputRange' --- Comment 'selecione o intervalo desejado para a função e' --- Comment 'entra como uma função de array com Ctrl + Shift + Enter. ' --- Comentário Dim ItemList () As Variant, c As Range, i As Long, iCount As Long i = 0 iCount = 0 ReDim ItemList (1 To InputRange.Cells.Count \ N) Para Cada c Em InputRange i = i + 1 If i Mod N = 0 Then iCount = iCount + 1 On Error Resume Next ItemList (iCount) = c.Value On Error GoTo 0 End If Next c INDEXN = ItemList If InputRange.Rows.Count> = InputRange.Columns.Count Then INDEXN = Application.WorksheetFunction.Transpose (INDEXN) End If Erase ItemList End Function
- Para obter cada enésimo item no intervalo B1: B10, a fórmula é
- {= INDEXN ($ A $ 1: $ A $ 100, 10)}
Nota: esta é uma fórmula de matriz; portanto, as teclas Ctrl + Shift + End devem ser pressionadas juntas
- Para obter a cada 7º valor do intervalo A1: A100; vamos mudar o último argumento de 10 para 7 e a fórmula será
- {= INDEXN ($ A $ 1: $ A $ 100, 7)}
Dessa forma, podemos retornar cada n-ésimo item de uma planilha para a planilha mestre.
- A fórmula em outra planilha conterá a referência da planilha
- {= INDEXN (Folha1! $ A $ 1: $ A $ 100, 10)}
Conclusão: Com a ajuda da função definida pelo usuário acima, podemos ter flexibilidade para descobrir cada enésimo item de uma planilha para outra.
Se você gostou de nossos blogs, compartilhe com seus amigos no Facebook. E você também pode nos seguir no Twitter e no Facebook. Gostaríamos muito de ouvir de você, diga-nos como podemos melhorar, complementar ou inovar nosso trabalho e torná-lo melhor para você. Escreva-nos no site de e-mail