Ir ao conteúdo
  • Cadastre-se

TianK

Membro Pleno
  • Posts

    85
  • Cadastrado em

  • Última visita

  1. Boa noite, Associe o código ao botão "Entrada": Sub cmdEntrada( oEvento ) Dim oForm as Object Dim otxtEntrada as Object oForm = oEvento.Source.Model.Parent otxtEntrada = oForm.getByName( "txtEntrada" ) oTxtEntrada.BoundField.Value = Time End Sub []s
  2. @Paulo Francisco T. Campos , Para apagar também fórmula é preciso usar oC.ClearContents( 21 ) 21 é a soma de 1 (valor) + 4 (texto) + 16 (fórmula)
  3. Olá, Tente colocando CONCATENAR() dentro de INDIRETO(): =PROCH(Plan2.B3;INDIRETO(CONCATENAR("Plan1.$B";B3;":$P";B3));0) INDIRETO() fará o Calc entender o texto concatenado como uma referência a intervalo. []s.
  4. Bem vindo! Olha, não consegui reproduzir seu problema. Quando pego um Campo formatado e defino o Código do formato para 00000-000 na propriedade Formatação, a inserção de algarismos acontece corretamente e o cep fica devidamente formatado. Deve haver alguma outra coisa atrapalhando seu formulário. É possível dar mais destalhes? Seu formulário está vinculado a um Banco de Dados? Qual é a versão do seu LibreOffice? []s. TianK
  5. Boa tarde, Isto não é bug. Teste a fórmula abaixo: =PROCV( B1;C1:D16;2;0 ) []s. TianK
  6. 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. 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
  7. 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
  8. Boa tarde, 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. 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
  9. 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
  10. 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.
  11. 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.
  12. Olá, o "modo compartilhado" está ativado? Porque por padrão o Calc não permite edições simultâneas. Se não me engando, a partir dar segunda pessoa o arquivo é aberto em "modo leitura". Você pode ir em Ferramentas - Compartilhar planilha... (ou "Compartilhar documento..." em versões anteriores) e desmarcar a caixa "Compartilhar esta planilha com outros usuários" para desativar este modo. []s. TianK
  13. @mdiego , Você já disse o que precisa fazer, ou seja, adaptar as macros que já tem. O que eu acho é que você deve importar os dados de todos os setores para uma única planilha. Ai depois, sobre os dados importados, fazer os processamentos e gerar os relatórios. []s. TianK
  14. @g.schiavinatto , boa tarde! Primeiramente um Feliz ano Novo! (atrasado) Bem, passaram as festas de final de ano, e eu esbocei alguma coisa. O usuário seleciona o intervalo e depois duas inputboxes pedem a ele que forneça a planilha (o índice) e a célula que receberá os dados únicos. Fiz alguns testes para verificar se o intervalo selecionado e a célula destino fornecidas são válidos. Claro, longe de esgotar todas as possibilidades de erro, mas imagino que as subrotinas ficaram "utilizáveis". Aguardo seu feedback sobre testes com a planilha anexa. Troque a extensão "zip" para "ods". []s. TianK extrariunicos.zip
  15. @g.schiavinatto , bom dia! Ainda não tive tempo para desenvolver outra solução. E eu pretendo fazer o mais breve possível. Porém, olhando (testando) seu código vi que a razão possível para o erro é a declaração das variáveis xi e yi como String. Veja, o retorno da função Split() é uma matriz, portanto, tem que ser do tipo Variant. Mude as linhas Dim xi as String Dim yi as String para Dim xi() as Variant Dim yi() as Variant E veja que seu código já vai funcionar para entradas nas InputBoxes como "Planilha1.A1:A8" e "Planilha2.A7". []s. TianK

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...