ENVIAR E IMPRIMIR EM PLANILHA

PROGRAMADORVB6 17/02/2012 08:13:08
#394983
Olá bom dia.
Em tempos o preenchiamento era feito á unha com esta Planilha
Não tenho muita experiência para exportar dados para planilhas e imprimir proveniente de um dataset em alguém tem um exemplo (VB.Net ) parecido de como o fazer ?
Ou então através do ReportView.
Grato desde já pela vossa atenção.
Programadorvb6
PEGUDO 17/02/2012 23:27:41
#395057
Pega este exemplo e veja se te ajuda
PEGUDO 18/02/2012 12:45:00
#395068
Eu já imaginava

Pega este instalador e testa aí.
O Interop é a versão 12, ou seja, Office 2007, se seu Office for o 2010
vai dar erro na referência ao Microsoft Excel 12.0 Objects Library

Para resolver isso, se estiver utilizando o Office 2010, no código do programa, você tem que:
1 - Ir em no menu Project;
2 - Excel Properties;
3 - Na Aba References;
4 - Excluir a referência ao Microsoft Excel 12.0 Objects Library
5 - Adicionar referência ao Microsoft Excel 14.0 Objects Library
PROGRAMADORVB6 18/02/2012 20:44:03
#395099
Olá Fernando.
Esse foi o problema que tive logo á partida de não ter um controle VBled.
Mas o que me interessava era como o código estava estroturado, pelo que entendi a função : ExportaExcel na Classes é direccionada para uma DataGridView; o que estou a trabalhar é em uma ListView.(Mas vai dar ao mesmo)
Vou tentar adaptar para uma ListView, e pelo que reparei só irei precisar mesmo dela visto já ter tudo pronto a funfar por ela.
Ainda me falta aprender muita coisa, mas pelo menos irei tentar me esforçar para aprender sempre mais alguma coisa , Já em VB6 foi assim ....
Obrigado desde já pela tua paciência e o teu esforçado trabalho em me ajudar.
Grato desde já a todos por tudo.
Programadorvb6
Nota : Vou ver se tento este fim de semana no trabalho adaptar o código da função.
Ps : Por acaso sabes quantos item suporta uma ListView?
é que eu por dia faço +- 30 a 40 registos por folha. = +-14400 (ano)
PEGUDO 19/02/2012 09:20:23
#395103
Aqui tem uma versão sem o ViBlend e sem o ListView
PROGRAMADORVB6 19/02/2012 19:47:08
#395112
Olá Fernando.
Adaptei o seu exemplo ao meu programa, só que ao enviar os dados para a Planilha a coluna: DATA na 1º folha aparece com um formato MM-dd-yyy (Estranho).
As outras folhas não contém cabeçalho e no campo Data contém a data normalizada.
Aqui fica o programa.
Para testar opte por fazer uma filtragem avançada de dados, escolhendo a data de : 01-01-2012 Até 31-01-2012 + Empresa : Limpex , depois tente imprimir para ver os resultados.
Grato desde já pela sua ajuda.
Atentamente
Programadorvb6
PEGUDO 20/02/2012 11:28:45
#395115
Resposta escolhida
Olá,
Fiz alterações no código de exportação, agora deve funcionar como o esperado.

Tomei a liberdade de mexer em outras áreas do programa.
Se você perceber, Em Procurar_Dados, Quando o Combo de filtragem está vazio o Programa localiza agora somente por nomes.

Agora o programa cria também uma pasta de relatórios dentro da pasta [Ô]Meus Documentos[Ô], chamada [Ô]Relatório folha laboral, se não existir,
Assim o programa vai utilizar somente a matriz como um layout e salvará o arquivo gerado com outro nome
deixando a matriz intacta.

Inseri duas propriedades na Classe Procedimentos: [Ô]Data_De[Ô] e [Ô]Data_Ate[Ô] e uma Sub: [Ô]SetarDatasPesquisa[Ô].
A finalidade das duas Propriedades é guardar o valor da menor data de pesquisa (Data_De) e a da maior data de pesquisa (Data_Ate) para serem mostradas no relatório
a finalidade da Sub [Ô]SetarDatasPesquisa[Ô] é colocar os valores da menor data em Data_De e da maior data em Data_Ate.

Assim o programa vai gerar um relatório com o nome, por exemplo: Relatório de 02_02_2012 a 15_02_2012.xlsx, dentro da pasta [Ô]Relatórios folha laboral[Ô]

outra coisa: Meu nome é Oliveira rsrsrs
PROGRAMADORVB6 21/02/2012 15:55:35
#395201
Olá Oliveira.
Tem um pequeno probleminha, quando tento imprimir + do que +-1.000 registos dá este erro.
De qualquer maneira obrigado por tudo. ( Talvez seja por ter adicionado a opção de impressão de cabeçalho sempre que salte uma nova folha para impressão.)
Aqui fica a menssagem com o erro :

PEGUDO 22/02/2012 08:55:46
#395244
Olá...
Na propriedade:
[txt-color=#0000f0]Public WriteOnly Property[/txt-color] ExportaExcel [txt-color=#0000f0]As ListView[/txt-color]

Troque este código:
[txt-color=#0000f0]Dim[/txt-color] Linha [txt-color=#0000f0]As Byte[/txt-color] = 7

por:
[txt-color=#0000f0]Dim[/txt-color] Linha [txt-color=#0000f0]As UInt32[/txt-color] = 7
PROGRAMADORVB6 22/02/2012 14:43:27
#395286
Olá Amigo Oliveira.
Já entendi, vc substituiu a variavel Linha que só comportava (acho eu até 255) ; por UInt32 (+ alargada que comporta int32 e que também se pode modular )FUNFA!
Quanto ao Print Preview da impressão tentei que o mesmo cabeçalho seja apresentado a cada mudança de folha (alterei a Matriz), (estranho que ao chegar ao fim do preenchimento da última grelha com valores, se verifique folhas em branco só com babeçalho), mas isso pode-se só seleccionar o que se deseja imprimir.
Quero desde já agradecer o teu préstimo em colaborar nesta comunidade e acima de tudo ter muita paciência para nos tentar ajudar.
Agradeço também a todos os outros que colaboram dia a dia nesta comunidade, dando as suas opiniões para que a cada dia aprendamos um método novo e aprimorarmos o código que desenvolvemos.
Por agora me despeço.
Atentamente.
Programadorvb6
Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas