Como extrair informações de folha de Excel com DAO

Traduções de Artigos Traduções de Artigos
Artigo: 190195 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

O controlador ISAM do Excel não converte dinamicamente tipos de dados.

Mais Informação

Se existir uma coluna na folha de cálculo Excel que contém texto e números, o ISAM não poderá interpretar correctamente o tipo de dados deve ser. Certifique-se que todas as células numa coluna estão formatadas para ser o mesmo tipo de dados. Por exemplo, poderá ter após dados em quatro colunas de uma folha de Excel:
   male   female children teens
   11     cc     78       ee
   22     xx     33       ff
   45     uu     56       oo
				

Se tentar ler os dados através do controlador ISAM contra a folha completa, obterá os valores nulo para a primeira linha. Se pretender evitar esta situação, crie intervalos com nome: um contendo apenas as informações de cabeçalho e outra com as informações de dados. Por exemplo:
   named range 'myRange1' :
   male     female    children     teens

   named range 'myRange2' :
   11   cc   78   ee
   22   xx   33   ff
   45   uu   56   oo
				

Agora pode ligar para o Excel e o pedido de informações a partir de determinado intervalo com nome. No entanto, um intervalo, uma determinada coluna pode conter apenas um tipo de dados.

Como criar um intervalo

Siga estes passos para criar uma gama:
  1. Realce os dados.
  2. Barra de menu, clique em Inserir e, em seguida, clique em Nome .
  3. Clique em Definir e clique em nome de intervalo .
NOTA: A caixa refere-se a irá remeter para o intervalo destacado. Isto deve aumentar e diminuir como dados são inseridos e eliminados.

Para obter os dados, utilize o nome do intervalo que acabou de criar o nome da tabela na instrução de selecção.

Passos do Excel

  1. Criar o ficheiro do Excel, test.XLS, com dados seguintes na Folha1:
       excel File : test.xls with the following entries:
    
            male  female    children   teens
             11    cc       78           ee
             22    xx       33           ff
             45    uu       56           oo
    					
  2. Criar o intervalo, myRange1 e myRange2, na folha com os dados adequados.
          named range : myRange1
    
          male female children teens
    
          named range  : myRange2
    
          11     cc   78   ee
          22     xx   33   ff
          45     uu   56   oo
    
    					

Passos do Visual Basic

  1. Crie um novo projecto EXE padrão denominado "DAO_EXCEL."
  2. No menu Project , clique em References e, em seguida, seleccione a caixa de verificação Biblioteca Microsoft DAO 3.5 .
  3. Coloque um CommandButton no formulário.
  4. Cole o seguinte código na janela de código do formulário:
          private Sub Command_click1
    
          im dbtmp As DAO.Database
          im tblObj As DAO.TableDef
          im rs As DAO.Recordset
    
          et dbtmp = OpenDatabase_
               ("<complete path>\test.xls", False, True, "Excel 8.0;")
    
          DoEvents
    
          Set rs = dbtmp.OpenRecordset("select * from `myRange2`")
          While Not rs.EOF
              For x = 0 To rs.Fields.Count - 1
                  Debug.Print rs.Fields(x).Value
              Next
              rs.MoveNext
          Wend
          End Sub
    
          Note the reverse apostrophe "`" while specifying the range
          name(myrange2).
    
    					
Os resultados seguintes são conforme esperado:
  11
  cc
  78
  ee
  22
  xx
  33
  ff
  45
  uu
  56
  oo
				

Referências

Consulte a documentação de como ligar para o Excel através de DAO. Outra referência boa será ADO futuro-> referência do Excel.

Propriedades

Artigo: 190195 - Última revisão: 2 de março de 2005 - Revisão: 2.3
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • The DAO SDK
Palavras-chave: 
kbmt kbdatabase kbhowto kbiisam KB190195 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 190195

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com