Ir para conteúdo
jjeffman

Usando C++ Builder TADOQuery para consultar planilhas Excel contendo células mescladas

Recommended Posts

Olá,

 

Eu estou usando TADOQuery para ler planilhas de um arquivo do Excel.

ADOQX->SQL->Text = "Select *  from [" + sPlan + "]";
try{ ADOQX->Active = true; }
catch(Exception *E){
  //MemoLog->Lines->Add ("PLanilha: "+ sPlan + " "+ E->Message );
  continue;
}
//MemoLog->Lines->Add ( "Obter as colunas da planilha "+ sPlan);
for(int Col = 0; Col < ADOQX->FieldCount; Col++)
{
  Planilha->AddColumn( Col, ADOQX->Fields->Fields[Col]->FieldName );
}

O retorno de ADOQX->FieldCount representa o número total de colunas presentes na planilha porém, como há duas linhas de cabeçalho antes dos dados e a primeira linha possui células que foram mescladas, os valores retornados por ADOQX->Fields->Fields[Col]->FieldName em alguns casos foram substituídos por F2, F3, .. etc

 

Há alguma maneira de identificar se existe célula mesclada na linha da planilha usando os componentes ADO do C++ Builder ( Delphi ) ?

 

Obrigado.

 

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

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por damelo155
      Eu sou totalmente novo no Microsoft Excel e tento encontrar alguns conselhos. Quando eu abro o arquivo .xlsx, uma mensagem de erro aparece: Houve um erro ao abrir o arquivo.
      O erro ocorre para um arquivo .xlsx, mas não para outros.
      Muito obrigado antecipadamente por toda sua ajuda
    • Por Edney
      Boa tarde,
      Necessito concluir minha função Se, de forma a qual me retorne em valor-se-falso o valor encontrado por ela no valor-se-verdadeiro,
      Assim consigo tornar automatizado minha planilha, carregando a quantidade de clientes que cada pessoa tem até o final do mês de forma a ser acumulativo,
      E também a quantidade estimada e fornecida acumulativa a cada mês.
       
      O problema é que quando vira a data programada ex.31/05/18 (43251) a formula me retorna um erro, "" ou Nda... preciso que ela retorne o valor que estava antes ou até a data mas que não mude dali em diante pois sera a função de uma próxima célula.
       
      Pensando no conceito de que esta planilha sera alimentada diariamente,. preciso que no fechamento de cada mês ela grave tais informações.
      Se houver outras funções ou modificações na planilha, 
      Agradeço Ideias.
       
      Segue planilha...
       
      https://drive.google.com/open?id=110HwTjlQdyuROEB4hQGRvZU2PBTu3IaU
       
    • Por Vincent da Silva
      Olá, eu quero criar um programinha para gerenciar campeonatos de um jogo que faço com meus amigos. Primeiro eu quero cadastrar as equipes, cada equipe tem sempre cinco jogadores e eu vou fazer um simples cadastro com o nome da equipe e os cinco jogadores. Depois eu quero criar um sistema que vai ser o principal para colocar as partidas. Quando eu for cadastrar o jogo (partida) eu vou selecionar duas equipes entre as que estão cadastradas e automaticamente o programa já vai colocar os jogadores, depois eu vou colocar os pontos, em cada ponto colocar a equipe e o jogador que marcou, aí o programa já soma o placar e depois que eu concluir os jogos vai gerar dois relatórios, um vai ser o ranking das equipes com vitórias e derrotas e o outro vai ser um ranking dos jogadores mostrando quantos pontos cada um marcou.
       
      O meu objetivo é que eu possa instalar esse programa no meu pc e se for preciso instalar em outro pc e ele armazene as equipes, os jogos, o ranking de equipes e jogadores e se possível eu até possa colocar uma pequena imagem com o símbolo de cada equipe para ilustrar o rankig igual nesses sites de esportes, mas eu não vou publicar na internet, apenas no PC e o mais importante é que eu possa fazer backup desses dados para eles não se perderem. Qual programa ou linguagem vocês recomendam para eu criar esse sistema com o banco de dados (equipes e jogos) e também para criar o programinha para inserir os resultados de cada partida?
       
      Eu costumava fazer isso no excel, mas agora quero deixar ele mais prático e automatizado. Eu sei que vou ter que estudar bastante para criar esse programa, mas eu só quero saber qual linguagem ou programa devo usar para estudar a coisa certa.
       
       

    • Por rrhbet9020
      Bom dia. Gostaria de obter ajuda para um problema
      O Excel Online não funciona com o arquivo .xls. Eu tenho um documento no qual eu inseri várias tabelas e diagramas. Mas agora, quando eu abrir o documento, recebo essa mensagem de erro: o servidor não está respondendo. Estou usando o iPhone 8
      Por favor, alguem saberia me dizer oq e por que isso ocorre? Desde ja, obrigado
    • Por Danilo Henriq
      Eae galera blz,
      meu problema é o seguinte tenho um sistema em php que exporta uma tabela sql para excel até ai blz ele gera o arquivo de boa porem quando eu abro o arquivo ele me da essa mensagem de aviso "O formato de arquivo e a extensão de "nome do arquivo.xls" não correspondem. o arquivo pode estar corrompido ou não seguro." se eu clicar na opção [sim] ele abre normal, porem gostaria de saber se há uma maneira de fazer com que não apresente esta mensagem pois é meio chato ver ela toda vez, deixo o código de exportação abaixo.
       
      <?php class Export{ public function excel($name, $fileName, $data){ // nome do arquivo $fileName = $fileName . '.xls'; // Abrindo tag tabela e criando título da tabela $html = ''; $html .= '<table border="1">'; $html .= '<tr>'; $html .= '<th colspan="' . count($data) . '">' . $name . '</th>'; $html .= '</tr>'; // criando cabeçalho $html .= '<tr>'; foreach ($data[0] as $k => $v){ $html .= '<th style="text-align:center;">' . ucfirst($k) . '</th>'; } $html .= '</tr>'; // criando o conteúdo da tabela for($i=0; $i < count($data); $i++){ $html .= '<tr>'; foreach ($data[$i] as $k => $v){ $html .= '<td style="text-align:center;">' . $v . '</td>'; } $html .= '</tr>'; } $html .= '</table>'; // configurando header para download header("Content-Description: PHP Generated Data"); header("Content-Type: application/x-msexcel"); header("Content-Disposition: attachment; filename=\"{$fileName}\""); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); // envio conteúdo echo $html; exit; } }  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.