As funções Choosecols e Chooserows da Microsoft Excel são um divisor de águas se você deseja extrair rapidamente colunas ou linhas específicas de seus dados sem aninhar várias funções em sua fórmula. Além disso, são funções dinâmicas, o que significa que se adaptam às mudanças no seu conjunto de dados.
No momento da redação deste artigo (maio de 2025), apenas as pessoas que trabalham com o Excel para o Microsoft 365 no Windows ou Mac ou Excel para a Web podem usar essas funções.
As sintaxes Choosecols e Chooserows
As funções Choosecols e Chooserows do Excel são como gêmeos: seus DNAs são muito semelhantes, mas são separados por diferenças sutis. O mesmo pode ser dito para suas sintaxes.
Aqui está a sintaxe para Choosecols:
=CHOOSECOLS(a,b,c,…)
E aqui está a sintaxe para Chooserows:
=CHOOSEROWS(a,b,c,…)
Nos dois casos,
- um (Necessário) é a matriz original que contém as colunas (Choosecols) ou linhas (Chooserows) que você deseja extrair,
- b (exigido) é o número de índice da primeira coluna (Choosecols) ou linha (Chooserows) a ser extraída,
- c (Opcional) representa os números de índice de quaisquer colunas adicionais (Choosecols) ou linhas (escolhas) a serem extraídas, cada uma das quais deve ser separada por vírgulas.
Se um número de índice representar uma coluna ou linha no centro da matriz (em outras palavras, não a primeira ou a última coluna ou linha), adicionar colunas ou linhas extras ao centro da matriz alterará a coluna ou linha indexada.
Você pode estar pensando que essas funções parecem muito semelhantes à função Take. No entanto, onde levar permite extrair o primeiro ou último x Colunas ou linhas, ou uma única coluna ou linha de outros lugares em uma tabela nomeada, Choosecols e Chooserows permitem extrair qualquer número de colunas em qualquer ordem de qualquer lugar dos seus dados.
Relacionado
Como usar o Excel para extrair dados
Extraia dados específicos da tabela do Excel.
Exemplo 1: Extraindo a primeira e a última coluna ou linha de uma tabela
Já perdi a conta do número de vezes que usei Choosecols e Chooserows para extrair a primeira e a última coluna ou linha de uma tabela. Isso é particularmente útil se a primeira coluna ou linha for um cabeçalho e a última coluna ou linha contiver totais.
Imagine que você é um administrador de uma liga esportiva local e está produzindo um relatório que resume os pontos marcados por cinco equipes em cinco jogos.
O primeiro conjunto de dados que você deseja gerar informará o número total de pontos pontuados em geral por cada equipe. Para fazer isso, em uma célula em branco, digite:
=CHOOSECOLS(T_Games[#All],1,-1)
onde
- Choosecols é a função que você deseja usar, pois você está extraindo os dados da equipe e colunas totais,
- T_games é o nome da tabela onde a matriz é armazenada e [#All] diz ao Excel que você deseja incluir o cabeçalho e o total de linhas no resultado,
- 1 é a primeira coluna (neste caso, a coluna chamada “equipe”) e
- -1 é a última coluna (neste caso, a coluna chamada “total”)
e pressione Enter.
Por padrão, o Choosecols contam da esquerda para a direita e o Chooserows conta de cima para baixo. Para reverter isso, coloque o símbolo menos (-) na frente dos números relevantes do índice.
Aqui está o resultado que você obtém ao pressionar Enter, e esses dados podem ser duplicados em outra folha na mesma pasta de trabalho, como uma guia do painel, ou copiados e colados como texto em um email ou documento do Word.
Agora, mesmo que mais dados sejam adicionados, o resultado – incluindo a linha total – aproveita de acordo.
Você também pode usar o mesmo método com tabelas não formatadas usando referências de células diretas em vez de referências estruturadas. No entanto, se você adicionar mais linhas à direita ou colunas à parte inferior da sua matriz, a fórmula não as pega, a menos que você altere as referências de células manualmente. Além disso, em geral, as tabelas oferecem melhores ferramentas e adaptabilidade do que as células não estruturadas.
O próximo relatório que você deseja gerar mostrará o número de pontos marcados em cada jogo (linhas 1 e 8).
Então, em uma célula em branco, tipo:
=CHOOSEROWS(T_Games[#All],1,-1)
e pressione Enter. Lembre -se disso adicionando [#ALL] Após o nome da tabela nas forças da fórmula, o Excel para contar o cabeçalho e o total de linhas ao abordar os números do índice.
Exemplo 2: Extraindo colunas de mais de um intervalo
Agora, digamos que você tenha essa planilha e seu objetivo é produzir uma lista contendo o total de pontuações de cada equipe nas ligas 1 (verde), 2 (azul) e 3 (cinza).
Desta vez, você não deseja extrair o Excel para extrair os cabeçalhos da coluna e os totais da linha, já que você vai aninhar a função Vstack na fórmula de Choosecols para empilhar as três tabelas diretamente uma na outra. Portanto, nas células I1 e J1, crie os cabeçalhos da coluna manualmente.

Relacionado
Como combinar, remodelar e redimensionar matrizes no Excel
Assuma o controle das matrizes da sua planilha e organize -as como quiser.
Então, na célula i2, tipo:
=CHOOSECOLS(VSTACK(League_1,League_2,League_3),1,-1)
onde
- Choosecols é a função que você usará para extrair colunas,
- Vstack Permite combinar os resultados verticalmente,
- Liga_1, liga_2, liga3 são os nomes das tabelas que representam as matrizes e a ausência de [#ALL] Depois que os nomes da tabela diz ao Excel para não incluir o cabeçalho e o total de linhas no resultado,
- 1 diz ao Excel para extrair a primeira coluna (“equipe”) de cada matriz e
- -1 diz ao Excel para extrair a última coluna de cada matriz (“Total”)
e pressione Enter.
Neste ponto, você pode dar um passo adiante e classificar o resultado em ordem descendente digitando:
=SORTBY(I2#,J2:J16,-1)
na célula L2 e pressionando Enter.

Relacionado
Você precisa saber o que o sinal de hash faz nas fórmulas do Excel
Esmague o hash em um flash!
Exemplo 3: Usando Choosecols com validação de dados e formatação condicional
Até agora, mostrei os benefícios de usar Choosecols e Chooserows para extrair as primeiras e as últimas colunas e linhas de uma matriz. No entanto, desta vez, mostrarei como você pode usar o ChooseCols para extrair outras colunas e combinar isso com ferramentas adicionais do Excel para destacar sua planilha.
Esta planilha mostra as notas de cinco equipes em cinco jogos, incluindo o total de pontos marcados em cada jogo na linha total. Seu objetivo aqui é produzir um resultado que mostre a pontuação de cada equipe e o total geral nas células A11 a B15 para um número de jogo que você entrará na célula B9.
Primeiro, digite um número de jogo na célula B9, para que você tenha algo com o que trabalhar quando gerar sua fórmula de Choosecols. Então, na célula A11, tipo:
=CHOOSECOLS(T_Scores[[#Data],[#Totals]],1,B9+1)
onde
- Choosecols é a fórmula usada para extrair colunas,
- T_scores é o nome da tabela e [[#Data]Assim,[#Totals]] diz ao Excel para incluir os dados e os totais no resultado, mas não na linha do cabeçalho,
- 1 representa a primeira coluna (“totais”) e
- B9+1 diz ao Excel que o segundo argumento do índice é representado pelo valor na célula B9, mais um. O motivo pelo qual você precisa incluir +1 Aqui está porque os números do jogo começam na segunda coluna da tabela. Como resultado, digitando 3 na célula B9 extrai os dados da quarta coluna da tabela, que é o jogo 3.
Embora digitar o número do jogo na célula B9 funcione bem, se você ou outra pessoa entrar acidentalmente um número inválido, a função Choosecols retornará um erro #Value.
O Excel retorna um erro #Value se algum dos números de índice for zero ou exceder o número de colunas ou linhas na matriz.
Este é um bom argumento para o uso da validação de dados na célula B9 para criar uma lista suspensa dos números de jogo disponíveis.

Relacionado
Como adicionar uma lista suspensa a uma célula no Excel
Ele supera a digitação nas mesmas opções 200 vezes diferente manualmente.
Minha maneira preferida de fazer isso para uma linha de cabeçalho em uma tabela do Excel é primeiro selecionar todas as células relevantes, além de alguns extras para permitir o crescimento e nomear o intervalo na caixa de nome no canto superior esquerdo da janela do Excel. Observe como não selecionei o cabeçalho da coluna “Team”, porque não quero que isso apareça na lista suspensa do jogo na célula B9.

Relacionado
Eu sempre citei intervalos no Excel, e você também deveria
Arrume sua pasta de trabalho do Excel.
Em seguida, selecione a célula B9 e clique na metade superior do botão “Validação de dados” na guia Dados na faixa de opções.
Agora, na caixa de diálogo Validação de dados, selecione “Lista” no campo Allow, verifique se “ignorar o branco” está verificado, digite um símbolo igual (=) Seguido pelo nome que você acabou de dar ao alcance do cabeçalho da coluna e clique em “OK”.
Agora você pode clicar na seta suspensa na célula B9 para selecionar um número de jogo válido, com segurança, sabendo que, mesmo que você adicione colunas extras à sua tabela, Choosecols e o intervalo nomeado na validação de dados funcionarão juntos para atualizar as opções disponíveis de acordo.
Por fim, para visualizar ainda mais seus dados, selecione as células B11 a B15 e, na guia Home na fita, clique em “Formatação condicional”, passando por “barras de dados” e escolha uma cor de preenchimento sólido.
Como resultado, você não apenas extraiu colunas específicas de seus dados usando o Choosecols, mas também fez o resultado dinâmico adicionando uma lista suspensa e formatou os dados para adicionar clareza visual.
Choosecols e Chooserows produzem matrizes dinâmicas, o que significa que o resultado derrama da célula onde você entrou na fórmula. Como resultado, antes de entrar em sua fórmula, verifique se há espaço suficiente na sua planilha – além, você receberá o temido #spill! erro. Além disso, como as matrizes dinâmicas e as tabelas do Excel formatadas não se misturam, se você deseja formatar o resultado, você terá que fazê -lo manualmente ou usando formatação condicional.