fórmula de planilha para retornar partes de células filtradas na coluna

fórmula de planilha para retornar partes de células filtradas na coluna

Eu uso o Libreoffice. (Se Excel ou GooglePlanilhas fossem a única forma de obter uma solução, eu estaria disposto a mudar. Mas a plataforma preferida é o LibreOffice, estou procurando uma solução neste Software).

Aqui está o que eu quero alcançar, tenho uma planilha como esta:

|Date         |Available?   |Length  |
|2/8 9:00     |no           |10
|26/8 9:00    |yes          |5
|28/8 9:00    |no           |2
|29/8 8:00    |yes          |5.5
|30/8 9:00    |yes          |6
|31/8 9:00    |no           |3

Agora quero extrair todas as datas onde houver SIM na coluna "disponível". Meses diferentes não ocorrem neste cenário, portanto apenas o dia é relevante. O que eu quero ter como resultado em alguma outra parte da planilha seria

26, 29, 30

E para tornar tudo ainda mais complexo, e se eu quiser contar o número de dias em quecomprimento é >5edisponívelé verdade? No exemplo acima, isso seria

3

Isso é possível? Eu rabisquei com VLOOKUP, mas não tenho ideia por onde começar. Eu acho que o Excel funcionaria da mesma forma ou semelhante.

Quero que isso funcione sem a necessidade do usuário filtrar nada manualmente. A ideia é apenas copiar/colar os dados e obter o resultado via fórmula em outra planilha do arquivo e aí criar uma fatura.

Responder1

No Excel... e com base neste bom index() + match()referência.

A solução para esta parte:

"se eu quiser contar o número de dias em que a duração é >5 e disponível é verdade? >3"

se length for >5 , então você deverá obter 2.. não 3.. se length for >=5, então somente você obterá 3.

Supondo que seus dados de amostra estejam em A1:C7 , a resposta é:

=COUNTIFS(B:B,"yes",C:C,">5")

Você receberá 2.

e para esta parte:

"desejo extrair todas as datas onde existe um SIM na coluna "disponível""

Supondo que seus dados "2/8 9:00" estejam localizados em A2 e "31/8 9:00" estejam localizados em A7, todos os dados da coluna A de ID são formatados como formato de data/hora no Excel, coloque isso em D2:

=IFERROR(IF(ROWS($A$2:$A2)>1,INDEX(OFFSET($A$2:$A$7,MATCH(D1,$A$2:$A$7,0),0),MATCH("yes",OFFSET($B$2:$B$7,MATCH(D1,$A$2:$A$7,0),0),0)),INDEX($A$2:$A$7,MATCH("yes",$B$2:$B$7,0))),"")

e isso em E2:

=IFERROR(DAY(D2),"")

você obterá o "26, 29, 30" lá.

informação relacionada