Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
mdiego

Extrair dados Baseado em Critérios.

Recommended Posts

Boa noite Pessoal!

 

Alguém sabe se dar para fazer extração de dados de um planilha para outra baseado em critérios?

 

Por exemplo:  

Na base de dados eu tenho: Setor, Data, Código, Defeito A, Defeito B... 

 

Na outra planilha eu teria o local para colocar os critérios.  

Exemplo 

                Setor : Alimentação

                Data : Janeiro

                Código: de 7000 até 8000 e 10.000 até 15.000

         IF SETOR == Alimentação && Data == Janeiro && Código >= 7000 && <=8000 && 10.000 && 15.000  Then

Enfim, não entendo muito bem disso.

 

Se alguém puder me ajudar fico grato.

 

Atenciosamente,

 

                 

                 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia,

 

Seu tópico já tem um certo tempo. Mas se ainda estiver atrás de uma solução, por favor, poste uma planilha de exemplo, com dados fictícios, que representem os tipos de dados que você vai lidar.

 

[]s.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Boa noite, Tiank!

     

    Obrigado por ser tão solícito... Eu fiz algumas coisas, mas acredito que não ficou bom, porque não tenho experiência... 

     

    Se conseguir colocar um combo box para selecionar os critérios, conforme mencionado agradeço. 

    https://drive.google.com/file/d/0B-bBwHPrUgR8czVtcTA1RVozZWM/view?usp=sharing

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Bom dia,

     

    Estava olhando seu arquivo e fiquei com algumas dúvidas.

    • Os parâmetros da aba Informações sãos todos os critérios que você precisa?
    • A coluna "Setor" da tabela parâmetro não é de setores, mas de critérios? Exemplo: os que possuem "Família" são, na verdade, um conjunto de setores e/ou itens (matérias-primas).

     

    []s.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • 2 horas atrás, TianK disse:

    Bom dia,

     

    Estava olhando seu arquivo e fiquei com algumas dúvidas.

    • Os parâmetros da aba Informações sãos todos os critérios que você precisa?
    • A coluna "Setor" da tabela parâmetro não é de setores, mas de critérios? Exemplo: os que possuem "Família" são, na verdade, um conjunto de setores e/ou itens (matérias-primas).

     

    []s.

    Stiak, primeiramente boa tarde e obrigado! 

    Sim, essa aba informações tudo aquilo são os critérios...

     

    Sim, são critérios.... 

    Exatemente isso que você me disse  famílias são um conjuntos de setores e/ou itens.

     

    Mas o que eu gostaria de fazer...

     

    Ter tipo uma combobox onde seleciono 

    Esses critérios. 

    Exemplo:  Gerar relatório

     

    Matéria prima. Posso selecionar todas ou uma só.  

    Mês

    Setor posso selecionar um, alguns ou todos

    Selecionar os itens que pertence para aquele  setor ou setores. Ai ja não precisaria obtecer aquelas listas de critérios da informações

     

     

    Obrigado Mestre!

     

     

     

     

     

     

     

     

     

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Boa tarde,

     

    Veja o que acha da minha solução. Na aba Relatório tem agora um Painel (controles de formulário) parar receber os critérios para filtragem/soma.

     

    Não sei qual o volume de dados que você irá lidar, mas com a quantidade do exemplo o funcionamento das rotinas foi bem ágil.

     

    Renomeie a extensão do arquivo de zip para ods:

    TianK(v3).zip

    Editado por TianK
    completar...
    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Bom dia, Tiank!!

     

    Muito grato pela rapida solucao o grande problema é que eu nao consegui renomear.... Extrai e ficou tudo em XML 

    Se puder me dizer como faco isso... 

     

    Obrigado mais uma vez.

     

    adicionado 20 minutos depois

    Sensacional Tiak. O único problema que é que na hora gerar o relatório na está classificado onde está o mês. E o acumulado é do primeiro mês até o mês 12... A soma de janeiro ao último mês lançado.   Tirando isso sensacional... Queria ter esse raciocínio! Seria possível gerar gráficos?! 

     

    Obrigado novamente

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Boa tarde,

     

    4 horas atrás, mdiego disse:

    Sensacional Tiak. O único problema que é que na hora gerar o relatório na está classificado onde está o mês. [...]

    Acabei me esquecendo de colocar uma linha com a chamada a sua macro ClassificarColunas2 no final da subrotina FazerRelatório. Uma linha que acho que resolve seu problema.

     

    4 horas atrás, mdiego disse:

    [...]E o acumulado é do primeiro mês até o mês 12... A soma de janeiro ao último mês lançado.[...]

    Você quer o acumulado do(s) Critério(s) ou o acumulado Geral. Fiz o do(s) critério(s), ou seja, o critério ou critérios escolhidos no painel, mas sempre para todos os meses, também vinculado às colunas existentes do relatório do mês. Como estava sem tempo, usei a sua própria base para testes. O acumulado funcionou mas talvez tenha alguns comportamentos não desejados para um rol real de dados.

     

    Outra coisa, quantas linhas em média sua Base real poderá ter no final do ano? Isso pode ter impacto no desempenho.

     

    []s.

    TianK

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Então, os critérios estão certinho... É que o acumulado é sempre o mês atual+o mês anterior...  O de cima está certinho, é o de baixo seria o acumulado. 

     

    No caso escolheria os critérios, e a data do acumulado poderia ser fixa... Somar tudo de janeiro até dezembro. Ai conforme vou inputando os dados vai gerar sempre o do último mês.  

     

    E quantidade de dados varia, mais o menos 1 a 2 mil linhas mês, 24 mil linhas preenchidas até o fim do ano. 

     

    Hahah, Enfim, obrigado! 

    E pra classificar é só eu chamar com call?

     

    Não é puxando saco não, mas esse conhecimento de programação em Basic é invejável! Abraço e obrigado. 

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Boa noite,

     

    Então, eu testei mais o filtro e corrigi uma falha que gerava resultados inconsistentes. O acumulado parece se comportar corretamente agora, somando os meses disponíveis para os critérios selecionados.

     

    Também incluí a chamada (call) da rotina para classificar as colunas do relatório Mês. Tomei a liberdade de renomeá-la a rotina para ClassificarRelatorioMes quanto transferi para o Módulo Painel.

     

    Agradeço pelos elogios... e principalmente pelo retorno. A cada ajuda a gente aprende mais com as necessidades de outros usuários do LibreOffice ou OpenOffice.

     

    Como da outra vez, renomeie a extensão zip para ods:

     

     

     

    TianK(v4).zip

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • 9 horas atrás, TianK disse:

    Boa noite,

     

    Então, eu testei mais o filtro e corrigi uma falha que gerava resultados inconsistentes. O acumulado parece se comportar corretamente agora, somando os meses disponíveis para os critérios selecionados.

     

    Também incluí a chamada (call) da rotina para classificar as colunas do relatório Mês. Tomei a liberdade de renomeá-la a rotina para ClassificarRelatorioMes quanto transferi para o Módulo Painel.

     

    Agradeço pelos elogios... e principalmente pelo retorno. A cada ajuda a gente aprende mais com as necessidades de outros usuários do LibreOffice ou OpenOffice.

     

    Como da outra vez, renomeie a extensão zip para ods:

     

     

     

    TianK(v4).zip

    Bom dia, Tiank!

     

    Obrigado por perder algumas horas do seu dia para me ajudar. 

    Ficou muito bom. Isso vai me ajudar bastante...  Tem outras coisas que eu precisaria fazer, mas já abusei da boa vontade.  Aproveitei o seu código Classificar mês  e fiz para o acumulado. 

    O mais engraçado, é que tem um cara que programa em Basic e escreve da mesma forma que você. 

    oPlan.

    oRelatorio

    sCriterio 

    Isso seria um padrão?

     

    Abração e obrigado. 

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Bom dia, Tiank!

     

    Estou com um probleminha na porcetagem, seria defeito/total de defeitos.

    Defeito A/Total Defeitos; B/Total Defeitos; C/Total Defeitos.

    Uma outra pergunta, seria possivel criar as 10 por setor?

     

    Vou encaminhar a planilha e o exemplo.

     

    Obrigado! 

    TianK(v4)- Exemplo.zip

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Bom dia,

     

    A porcentagem foi fácil de ajustar porque basta corrigir uma única linha na sub-rotina TransfValores. Ela estava recuperando a quantidade do lote ao invés do total de defeitos.

    De:

    vDefTotal = oPlan.getCellByPosition( 3+nC,nLin+1 ).Value 'Valor total dos defeitos

    Para:

    vDefTotal = oPlan.getCellByPosition( 2+nC,nLin+1 ).Value 'Valor total dos defeitos

    E com relação como nomear as variáveis, é uma convenção de "prefixos" muito disseminada na comunidade internacional do LibreOffice e do OpenOffice. Com o tempo me acostumei a ela e passei a adotar mais ou menos. Acho que "economiza" variáveis além de facilitar a leitura do código. Ex.: preciso armazenar o objeto célula, uso oCel, depois quero a string que está dentro da célula, uso sCel. A seguir, encontro no código uma variável iQualquerCoisa, já vou saber que se trata de um integer.

     

    Em 11/03/2017 às 12:26, mdiego disse:

    [...]

    Uma outra pergunta, seria possivel criar as 10 por setor?

     

    Porque você não aproveita os dados da aba Filtrado. Copia eles para um outra planilha e, usando as fórmulas, extrai os 10 mais para o setor.

     

     

    Planilha corrigida:

    TianK(v4)-(corrig).zip

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Verdade. Obrigado mestre! 

     

    Puts, e eu nem sabia que significava isso. 

    dCel, fCel, oCel...Double, float...  Que bacana... 

     

    Abraço e obrigado pelo tempo despendido.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×