Como xerar unha lista baseada en criterios en Excel (4 métodos)

  • Comparte Isto
Hugh West

En Excel, ás veces pode ter que xerar unha lista baseada en criterios. Hoxe imos amosarche como xerar unha lista en base a criterios. Para esta sesión, estamos a usar Excel 365, aínda que é recomendable usar esta versión, non dubides en usar a túa.

Primeiro, imos coñecer o conxunto de datos que é a base dos nosos exemplos.

Aquí temos un conxunto de datos de varias persoas de diferentes lugares xunto cos seus vehículos. Usando estes datos, formaremos unha lista baseada en criterios.

Ten en conta que esta é unha táboa básica con datos ficticios para simplificar as cousas. Nun escenario práctico, podes atopar un conxunto de datos moito máis grande e complexo.

Caderno de prácticas

Pode descargar o caderno de prácticas desde a seguinte ligazón.

Excel Xerar lista en base a Criteria.xlsx

Xerar lista en base a Criterios

Por exemplo, crearemos unha lista de persoas en función da súa rexión.

Dado que é un conxunto de datos pequeno sabemos que hai 4 rexións. Gardamos os nomes das rexións e atoparemos a lista en función da rexión.

1. Usando a combinación INDEX-SMALL para xerar unha lista

Aquí necesitamos unha lista, polo que a nosa fórmula debería ser unha. que recuperará os múltiples valores da táboa. Para esa tarefa, podemos usar unha combinación de funcións INDEX e SMALL .

Para coñecer estas funcións, consulta estes artigos: INDEX, SMALL.

Xunto con estas dúas, necesitaremos algunhas funcións auxiliares, IF , ROW e IFERROR . Consulta os artigos para obter máis información: IF, ROW, IFERROR.

Exploremos a fórmula

=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=$G$2,ROW($B$2:$B$12)),ROW(1:1))-1,1),"")

Aquí cada función ten o seu propósito. A función INDEX devolve o valor da matriz B2:B12 (columna Nome) e a parte grande SMALL proporciona o número de fila, que se debe obter.

SE, dentro do PEQUENO, comproba se os criterios coinciden ou non, e a función FILA itera sobre as celas da columna .

Entón o ROW exterior indica o k-ésimo valor para a función SMALL . En conxunto, estas funcións devolven o número de fila e INDEX devolve o resultado.

IFERROR para tratar calquera erro que poida xurdir coa fórmula.

Arrastra cara abaixo obterás todas as persoas da rexión determinada.

Do mesmo xeito, escribe a fórmula para as outras rexións (a fórmula é a mesma, cambia só a cela).

Unha combinación alternativa INDEX-SMALL

Podemos escribir a fórmula dunha forma alternativa. As funcións empregadas para a fórmula serán as mesmas que as anteriores. Só a presentación será diferente.

Vexamos a fórmula

=IFERROR(INDEX($B$2:$B$12,SMALL(IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1),"")

De novo, cómpre premer CTRL + MAYÚS + ENTER para executar ofórmula.

Hai unha lixeira diferenza entre estas dúas fórmulas, podes diferencialas?

Si, na nosa fórmula anterior, restamos 1 en o final da parte PEQUENA , pero aquí restamos 1 dentro da parte IF .

O propósito de restar 1 é canalizar ao número de fila axeitado. Antes fixemos iso por fin, aquí fixemos iso antes e procedamos á operación posterior.

Escriba a fórmula para os outros criterios para completar a lista.

Ler máis: Como facer unha lista dentro dunha cela en Excel (3 métodos rápidos)

2. Usando a función AGGREGATE para xerar lista

Excel ofrécelle unha función chamada AGGREGATE que pode usar para realizar varias tarefas. Aquí podemos usar a función para xerar unha lista baseada en criterios.

A función AGGREGATE devolve un cálculo agregado como AVERAGE, COUNT, MAX, etc.

A sintaxe para a función AGGREGATE é a seguinte:

AGGREGATE(function_number,behavior_options, range)

function_number: Este número especifica que cálculo se debe facer.

behavior_options: Establece isto usando o número. Este número indica como se comportará a función.

intervalo: Intervalo que quere agregar.

A función AGGREGATE realiza varias tarefas polo que un número de as funcións están predefinidas nel. Enumeramos algunhas funcións de uso frecuentenúmeros

Función Número_función
PROMEDIO 1
CONTAR 2
CONTAR 3
MAX 4
MIN 5
PRODUTO 6
SUMA 9
GRANDE 14
PEQUENO 15

Para saber máis sobre a función, visite o sitio de Soporte de Microsoft .

Agora imos ver a fórmula,

=IFERROR(INDEX($B$2:$B$12,AGGREGATE(15,6,IF($C$2:$C$12=G$2,ROW($B$2:$B$12)-1),ROW(1:1)),1),"")

Aquí xunto coa función AGGREGATE , usamos INDEX . INDEX contén a matriz que devolve valores baseados nas coincidencias atopadas na parte posterior da fórmula.

Podes ver que usamos 15 como número_función en AGGREGATE . Na táboa anterior, podes ver 15 chamadas para a operación da función SMALL . Agora podes relacionar?

Si, executamos a fórmula INDEX-SMALL ao xeito da función AGGREGATE .

6 para a opción de comportamento, que indica ignorar os valores de erro .

Escriba a fórmula para o resto dos valores.

Lecturas similares

  • Como facer unha lista de tarefas en Excel (3 métodos sinxelos)
  • Crear unha lista de correo en Excel (2 métodos)
  • Como facer unha lista numerada en Excel (8 métodos)

3. Xera unha lista única usando INDEX-MATCH-COUNTIF

Podemos crear unha lista única baseada en criterios. Para iso, podemos usar a combinación de INDEX , MATCH e COUNTIF .

COUNTIF conta as celas en un rango que cumpre unha única condición. E MATCH localiza a posición dun valor de busca nun intervalo. Para obter máis información sobre estas funcións, consulta estes artigos: COINCIR, CONTAR SE.

Exploremos a fórmula

=IFERROR(INDEX($B$2:$B$12, MATCH(0, IF(G$2=$C$2:$C$12, COUNTIF($G$2:$G2, $B$2:$B$12), ""), 0)),"")

Nesta fórmula: B2: B12 é o intervalo de columnas que contén os valores únicos dos que queres extraer, C2:C12 é a columna que contén o criterio no que te baseas G2 indica o criterio.

Dentro da función MATCH , fornecemos 0 como matriz_busca, e para rango_busca usamos o IF parte que contén COUNTIF . Entón, esta parte devolve o valor sempre que se atope 0. O valor aquí funciona como o número de fila para INDEX .

Arrástrao cara abaixo e atoparás todos os valores únicos.

Non esquezas utilizar CTRL+MAIÚS + ENTER para executar a fórmula.

Esta foi unha mención honorífica dos enfoques para xerar un único lista. Siga este artigo para saber como xerar unha lista única baseada en criterios .

4. Usando a función FILTRO para xerar unha lista baseada en criterios

Se está a usar Excel 365, entón pode realizar a tarefa cun únicona función chamada FILTRO .

A función FILTRO filtra un rango de datos en función de criterios dados e extrae rexistros coincidentes. Para coñecer a función, visita este artigo: FILTRO .

Agora, a nosa fórmula será a seguinte,

=FILTER($B$2:$B$12,$C$2:$C$12=G$2)

B2:B12 é a matriz que se vai filtrar. A continuación, fornecemos a condición, en función do que xeraremos a lista.

Aquí non terás que arrastrar a fórmula, xa que dunha soa vez, proporcionará todos os valores e cumprirá a lista.

Ler máis: Como facer unha lista alfabética en Excel (3 xeitos)

Conclusión

Iso é todo por hoxe. Listamos varias formas de xerar unha lista en función de criterios. Espero que che resulte útil. Non dubides en comentar se algo parece difícil de comprender. Infórmanos de calquera outro método que perdemos aquí.

Hugh West é un adestrador e analista de Excel altamente experimentado con máis de 10 anos de experiencia na industria. É Licenciado en Contabilidade e Finanzas e Máster en Administración de Empresas. Hugh ten unha paixón polo ensino e desenvolveu un enfoque docente único que é fácil de seguir e comprender. O seu coñecemento experto de Excel axudou a miles de estudantes e profesionais de todo o mundo a mellorar as súas habilidades e a destacar nas súas carreiras. A través do seu blog, Hugh comparte os seus coñecementos co mundo, ofrecendo titoriais de Excel gratuítos e formación en liña para axudar ás persoas e ás empresas a alcanzar todo o seu potencial.