Um ramo pouco conhecido da maioria dos planilheiros é o das funções de banco de dados (BDCONTAR, BDSOMA...).
Nestas funções os critérios ficam fora da fórmula por que são expressos numa tabela própria que vc define na planilha e cuja manipulação pode ser mais fácil. Ali vc pode ter critérios E e OU combinados. Operam-se milagres com elas e não são tabelas dinâmicas. Abs Em 27/09/2019 08:40, Embalagens Municipal escreveu: > " Voce pode usar a função SOMASES, que soma várias colunas com vários > critérios > > SOMASES(Intervalo_Func; Intervalo1; Critério1 [ ; Intervalo2; Critério2 > [;...]])) " > > Então Oliver, como eu tinha respondido antes, e acho que não foi para o > fórum, a função SOMASES só retornará a soma se todos os critérios forem > checados > simultaneamente. Eu precisaria de um SOMASES em que os vários intervalos > e/ou critérios se relacionassem logicamente como OU e não como E, ou seja, > que ao menos um dos critérios nos intervalos fosse um resultado verdadeiro, > e não todos. > > Outra coisa que eu pensei, seria como fazer uma conferência em uma matriz. > O que notei é que o dado procurado nunca vai se repetir na mesma linha, > porque > um faturamento parcelado, nunca terá dois ou mais vencimentos na mesma > data. Mas o dado poderá se repetir em uma mesma coluna, já que cada linha é > um > faturamento de um pedido diferente, em datas diferentes. > > " Realmente o somases é a melhor solução, mas me parece que vc quer mesmo > é colocar os valores das parcelas ao longo de uma série de colunas? vc > tinha mencionado algo assim: > > indice data valor par1 par2 par ... > 1 2/8 36 6 6 6 ... > > certo? que tal m pivot? para o pivot vc precisaria de cada parcela na > base de dados principal normalizada. > > agora sem o pivot, vc usar um truque sujo de programação que é > multiplicar o array booleano pelo valor da parcela: " > > Bem, essa eu não conhecia. Mas sobre a divisão das parcelas, isto está > tranquilo. Isto eu consegui fazer. > A encrenca maior está em condensar nas células do calendário todos os > valores de todas as parcelas que vencem > na data correspondente. > > Atenciosamente, > > Paulo Murilo > Embalagens Municipal > Mercado Municipal de Curitiba Boxes: 70,71 e 72. > Telefone Fixo: (41) 3263-3337 > Cel.WhatsApp: (41) 98403-2118 > > > > Em qui, 26 de set de 2019 às 20:52, Bruno Rafael Santos < > [email protected]> escreveu: > >> Realmente o somases é a melhor solução, mas me parece que vc quer mesmo >> é colocar os valores das parcelas ao longo de uma série de colunas? vc >> tinha mencionado algo assim: >> >> indice data valor par1 par2 par ... >> 1 2/8 36 6 6 6 ... >> >> certo? que tal um pivot? para o pivot vc precisaria de cada parcela na >> base de dados principal normalizada. >> >> agora sem o pivot, vc usar um truque sujo de programação que é >> multiplicar o array booleano pelo valor da parcela: >> >> par1 par2 par3 >> >> se(and(data >= par1; data <= par2, 1, 0)) * valor >> >> isto retornará as parcelas distribuídas nas datas corretas (onde par é a >> data de vencimento), se as parcelas forem iguais funciona que é uma beleza. >> >> *Bruno Rafael de C. Santos* >> /R&D Project Manager >> resume <https://cutt.ly/uwwqjvT> | research <https://cutt.ly/Fwq68fL> | >> blog <http://www.rafaelocremix.wordpress.com/> >> phone: +55 21 979 817 467 >> / >> Am 26.09.19 um 17:45 schrieb Embalagens Municipal: >>> "certo, tens razão >>> a maneira mais simples (não necessariamente a melhor) é somar os somase >>> somase(dá coluna 1)+somase(dá coluna2)...." >>> >>> Isto mesmo! É o que eu consegui fazer até agora, mas tem que colocar >> muita >>> fórmula e funções. Gostaria de algo um pouco mais prático. >>> O que seria ideal é uma função, que como escrevi antes, procurasse a data >>> específica na matriz, e quando encontrasse, me retornasse o valor >>> correspondente na coluna das parcelas, e fosse somando esta valor cada >> vez >>> que encontrasse a correspondência. >>> >>> >>> Atenciosamente, >>> >>> Paulo Murilo >>> Embalagens Municipal >>> Mercado Municipal de Curitiba Boxes: 70,71 e 72. >>> Telefone Fixo: (41) 3263-3337 >>> Cel.WhatsApp: (41) 98403-2118 >>> >>> >>> >>> Em qui, 26 de set de 2019 às 17:32, Prof Mauro Duarte < >>> [email protected]> escreveu: >>> >>>> certo, tens razão >>>> a maneira mais simples (não necessariamente a melhor) é somar os somase >>>> somase(dá coluna 1)+somase(dá coluna2).... >>>> >>>> Em qui, 26 de set de 2019 às 14:29, Embalagens Municipal < >>>> [email protected]> escreveu: >>>> >>>>> Creio que na SOMASES, para ela somar, todas as colunas precisam >> coincidir >>>>> com os critérios, e não apenas uma coluna. Ela somaria só se a data >>>>> fosse encontrada nas dois ou mais intervalos ao mesmo tempo. >>>>> Preciso que uma função que verifique uma matriz ou vários intervalos e >>>>> que some todas as vezes que o critério apareça, e que some os valores >>>>> de apenas uma coluna. >>>>> >>>>> Atenciosamente, >>>>> >>>>> Paulo Murilo >>>>> Embalagens Municipal >>>>> Mercado Municipal de Curitiba Boxes: 70,71 e 72. >>>>> Telefone Fixo: (41) 3263-3337 >>>>> Cel.WhatsApp: (41) 98403-2118 >>>>> >>>>> >>>>> >>>>> Em qui, 26 de set de 2019 às 14:10, Embalagens Municipal < >>>>> [email protected]> escreveu: >>>>> >>>>>> Então, eu também tinha pensado em usar esta função, mas à partir da >>>>>> segunda coluna ela parece não funcionar corretamente, resultando numa >> soma >>>>>> 0. >>>>>> >>>>>> Atenciosamente, >>>>>> >>>>>> Paulo Murilo >>>>>> Embalagens Municipal >>>>>> Mercado Municipal de Curitiba Boxes: 70,71 e 72. >>>>>> Telefone Fixo: (41) 3263-3337 >>>>>> Cel.WhatsApp: (41) 98403-2118 >>>>>> >>>>>> >>>>>> >>>>>> Em qui, 26 de set de 2019 às 12:52, Prof Mauro Duarte < >>>>>> [email protected]> escreveu: >>>>>> >>>>>>> vais ter que usar =SOMASES(coluna valores;coluna data 1;data;coluna >>>>>>> data 2;data;coluna data 3;data .... >>>>>>> >>>>>>> Em qui, 26 de set de 2019 às 09:49, Embalagens Municipal < >>>>>>> [email protected]> escreveu: >>>>>>> >>>>>>>> Isto. Porque estas datas são as datas de cada parcelamento. Conforme >>>>>>>> as condições de parcelamento, que coloquei inicialmente em até 6 >> vezes, >>>>>>>> então a matriz ficou com 6 colunas. E estas células serão >> preenchidas com >>>>>>>> as datas de acordo com os parcelamentos. >>>>>>>> >>>>>>>> Atenciosamente, >>>>>>>> >>>>>>>> Paulo Murilo >>>>>>>> Embalagens Municipal >>>>>>>> Mercado Municipal de Curitiba Boxes: 70,71 e 72. >>>>>>>> Telefone Fixo: (41) 3263-3337 >>>>>>>> Cel.WhatsApp: (41) 98403-2118 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Em qui, 26 de set de 2019 às 09:44, Prof Mauro Duarte < >>>>>>>> [email protected]> escreveu: >>>>>>>> >>>>>>>>> tu tens datas em colunas diferentes, isso? >>>>>>>>> >>>>>>>>> Em qui, 26 de set de 2019 às 09:21, Embalagens Municipal < >>>>>>>>> [email protected]> escreveu: >>>>>>>>> >>>>>>>>>> Olá pessoal. Tenho agora uma seguinte dúvida. Qual é o jeito >> melhor >>>>>>>>>> e mais >>>>>>>>>> fácil de se somar valores de acordo com uma condição? >>>>>>>>>> Tenho uma tabela que consiste numa coluna base (um índice) e logo >> ao >>>>>>>>>> lado >>>>>>>>>> desta coluna tenho uma matriz com o mesmo numero de linhas. A >> matriz >>>>>>>>>> apresenta datas de parcelamento e a coluna o valor da parcela. >>>>>>>>>> Preciso efetuar uma conferência em todas as células da matriz para >>>>>>>>>> encontrar uma data específica, e se ela for encontrada, somar o >> valor >>>>>>>>>> correspondente da coluna de parcelas. >>>>>>>>>> >>>>>>>>>> Estou tentando usar a função SOMASE, que parece funcionar apenas >> na >>>>>>>>>> primeira coluna da matriz, já quando ele encontra a data a ser >>>>>>>>>> conferida >>>>>>>>>> nas outras colunas, a soma resultante é bem diferente. Alguém tem >>>>>>>>>> uma ideia >>>>>>>>>> melhor ou como corrigir isto? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Atenciosamente, >>>>>>>>>> >>>>>>>>>> Paulo Murilo >>>>>>>>>> Embalagens Municipal >>>>>>>>>> Mercado Municipal de Curitiba Boxes: 70,71 e 72. >>>>>>>>>> Telefone Fixo: (41) 3263-3337 >>>>>>>>>> Cel.WhatsApp: (41) 98403-2118 >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Você está recebendo e-mails da lista >> [email protected] >>>>>>>>>> # Informações sobre os comandos disponíveis (em inglês): >>>>>>>>>> mande e-mail vazio para >> [email protected] >>>>>>>>>> # Cancelar sua assinatura: mande e-mail vazio para: >>>>>>>>>> [email protected] >>>>>>>>>> # Arquivo de mensagens: >>>>>>>>>> https://listarchives.libreoffice.org/pt-br/usuarios/ >>>>>>>>>> >> >> -- >> Você está recebendo e-mails da lista [email protected] >> # Informações sobre os comandos disponíveis (em inglês): >> mande e-mail vazio para [email protected] >> # Cancelar sua assinatura: mande e-mail vazio para: >> [email protected] >> # Arquivo de mensagens: >> https://listarchives.libreoffice.org/pt-br/usuarios/ >> > -- Olivier Hallot LibreOffice Documentation Coordinator Comunidade LibreOffice Rio de Janeiro - Brasil - Local Time: UTC-03:00 http://tdf.io/joinus -- Você está recebendo e-mails da lista [email protected] # Informações sobre os comandos disponíveis (em inglês): mande e-mail vazio para [email protected] # Cancelar sua assinatura: mande e-mail vazio para: [email protected] # Arquivo de mensagens: https://listarchives.libreoffice.org/pt-br/usuarios/

