Fórum Inserir os dados de uma planilha Excel para um DBGrid #193344
06/11/2003
0
Tenho uma tela num programa que possui um DBGrid onde será mostrado os valores de uma planilha Excel.
Nesta tela tem um botão de ´Importar´ e outro de ´Exportar´.
Quando o usuário clicar em ´Importar´ abrirá uma janela através de um componente ´OpenDialog´ onde o usuário deverá selecionar o arquivo Excel.
Este arquivo tem uma formatação fixa, contendo duas colunas, uma com o Nome do Usuário e outra com a Matrícula.
Quando o usuário selecionar o arquivo que será aberto, o programa lerá o arquivo, pegando linha a linha e inserindo os dados no DBGrid, até chegar a uma célula vazia.
Após inserir todas as linhas, o usuário poderá incluir ou excluir alguma linha. Esta inclusão e exclusão no DBGrid acho que não deve ser tão difícil.
Quando o usuário clicar em ´Exportar´, o programa deve ler todas as linhas do DBGrid, criar um ´arquivo.txt´ e inserir linha a linha neste arquivo txt criado.
Obs.: O campo nome tem um tamanho máximo de 30 caracteres e a matrícula no máximo 7.
Sei que isto é bastante complexo, mas se alguém puder me ajudar agredeceria muito.
Ou se tiverem algum programa que faça algo parecido, também ajuda bastante.
Desde já agradeço.
Bclr
Curtir tópico
+ 0Posts
06/11/2003
Andrelan
Mande seu problema para meu email andrelan@click21.com.br com a tela, a planilha e a tabela que você esta querendo fazer esta operação que te ajudarei.
Abraço André Nascimento
Gostei + 0
07/11/2003
Bclr
SE ALGUÉM TIVER MAIS ALGUMA IDÉIA...
Gostei + 0
07/11/2003
Bclr
NINGUÉM TEM ALGUMA IDÉIA DE COMO FAZER ISTO ???
Gostei + 0
07/11/2003
Einstein
* quanto a Usar o Excel. vc pode usar os Componentes da Paleta ADO. tem um exemplo na seçào Aplicativos.
* pra exportar pro Arquivo TXT vc pode usar a variavel TextFile. segue um exemplo:
var
Exportar:TextFile;
Conteudo:string;
begin
AssignFile(Exportar,´C:\Exportar.txr´); // Cria o arquivo exportar no C:.
Rewrite(Exportar); // Abre o Arquivo.
while not OrigemdeDados.Eof do begin //Inicio do Loop.
Conteudo:=Format(´¬-30s´, [Copy
(OrigemdeDadosNome.AsString,1,30)])+
Format(´¬-7s´, [Copy(OrigemdeDadosMatricula.AsString,1,30)]);
Writeln(Exportar,Conteudo);
OrigemdeDados.Next;
end;
CloseFile(Exportar);// Fechar o Arquivo Exportar;
FreeAndNil(Exportar) // libera a memória.
Nota: Readln(Exportar,Conteudo) // usado para ler o Arquivo.
espero ter ajudado.
Gostei + 0
10/11/2003
Bclr
Mas continuo em dúvida de como fazer para pegar os valores de uma planilha Excel. É melhor usar mesmo componentes da paleta ADO?
Não encontrei nenhum exemplo de como fazer isto na seçào Aplicativos.
O que usar StringGrid ou DBGrid?
Por favor alguém me ajude.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)