XL2000: Como utilizar objectos de acesso a dados para associar tabelas de diferentes formatos

Traduções de Artigos Traduções de Artigos
Artigo: 213820 - Ver produtos para os quais este artigo se aplica.
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Expandir tudo | Reduzir tudo

Sumário

O Microsoft Excel 2000 fornece Data Access Objects (DAO) para Microsoft Visual Basic para lhe permitir aceder a bases de dados externas. O Microsoft Query e o interligação de bases de dados abertas (ODBC, Open Database CONNECTIVITY) suplemento (xlodbc.xla) não fornecem que uma directa significa para si associar tabelas dos formatos de base de dados diferente. Utilizando o DAO, pode associar tabelas dos formatos de base de dados diferente, anexando as tabelas a uma base de dados Jet. Uma tabela ligada ou tabela ligada, é uma tabela noutra base de dados ligado a uma base de dados Microsoft Jet. Dados para tabelas anexadas permanecem na base de dados externa.

Este artigo fornece um exemplo de como anexar tabelas dos formatos de base de dados diferente a uma base de dados Jet, de modo a que as tabelas podem ser associadas.

Mais Informação

Microsoft fornece exemplos de programação ilustração só, sem garantia expressa ou implícita, incluindo, sem limitação, garantias implícitas de comercialização e/ou adequação a um fim específico. Este artigo pressupõe que está familiarizado com a linguagem de programação apresentada e as ferramentas utilizadas para criar e depurar procedimentos. Profissionais de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento, mas não modificarão estes exemplos para proporcionarem funcionalidades adicionais nem criarão procedimentos adaptados às necessidades específicas.
Se dispõe de limitada experiência de programação, poderá contactar um Microsoft Certified Partner ou a serviços de aviso. Para obter mais informações, visite estes Web sites da Microsoft:

Microsoft certificado Partner - https://partner.microsoft.com/global/30000104

Serviços Microsoft aviso - http://support.microsoft.com/gp/advisoryservice

Para obter mais informações sobre as opções de suporte estão disponíveis e sobre como contactar a Microsoft, visite o seguinte Web site da Microsoft: http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS
A seguinte macro de exemplo anexa a duas tabelas a uma base de dados do Jet recém-criado (Temp.mdb). Uma tabela denomina-se encomendas e está no formato Microsoft Excel. A tabela é designado por empregado e é no formato dBASE IV.

O ficheiro do dBASE IV utilizado neste exemplo é o ficheiro de exemplo Employee.dbf, que é incluído no Microsoft Query. Pode encontrar o exemplo dBASE IV ficheiros na seguinte localização predefinida:
C:\Programas\Microsoft Office\Office
Para criar o ficheiro do Excel utilizado neste exemplo, siga estes passos:
  1. No Excel, crie um novo livro.
  2. Escreva os dados seguintes nas células A1:E3 na Folha1:
       A1: Order_ID B1: Custmr_ID C1: Employ_ID D1: Order_Date E1: Order_Amt
       A2: 88000    B2: WALNG     C2: '111      D2: 1/1/97     E2: 111.00
       A3: 88001    B3: HIGHG     C3: '333      D3: 1/2/97     E3: 222.00
    						
    Nota : incluir o apóstrofo antes dos números nas células C2 e C3, tal como mostrado, para converter os valores de texto.
  3. Seleccione células A1:E3. No menu Inserir , aponte para Nome e, em seguida, clique em Definir . Escreva encomendas e, em seguida, clique em OK .
  4. Guarde o livro como c:\Os meus Documents\Orders.xls.
  5. Feche o livro.
  6. Crie um novo livro.
  7. Prima ALT+F11 para iniciar o Editor do Visual Basic e, em seguida, no menu Inserir , clique em módulo .
  8. No menu Ferramentas , clique em References . Seleccione Microsoft DAO 3.6 Object Library e, em seguida, clique em OK .
  9. Escreva o seguinte código na folha do módulo:
    Sub JoinTables()
    Dim db As database
    Dim rs As recordset
    Dim OrdersTable As tabledef, EmpTable As tabledef
       'Create a temporary Jet database called Temp.MDB
       Set db = createdatabase("C:\My Documents\Temp.mdb", dbLangGeneral)
       'Attach the Excel table "Orders" from the file Orders.xls to the
       'database
       Set OrdersTable = db.CreateTableDef("Orders")
       OrdersTable.Connect = "Excel 5.0;DATABASE=C:\My Documents\ORDERS.XLS"
       OrdersTable.SourceTableName = "Orders"
       db.TableDefs.Append OrdersTable
       'Attach the dBASE IV table "Employee" to the database
       '** Note: You may need to change the path to the sample dBASE
       '   files for your installation of Excel.
       Set EmpTable = db.CreateTableDef("Employee")
       EmpTable.Connect = _
             "dBASE IV;DATABASE=C:\Program Files\Microsoft Office\Office"
       EmpTable.SourceTableName = "Employee"
       db.TableDefs.Append EmpTable
       'Create the recordset -- Return the Order_ID from the Orders
       'table and
       'The First_name and Last_Name from the Employee table where the
       'Employ_ID in the Employee table matches the Employ_ID in the Orders
       'table
       Set rs = db.OpenRecordset("SELECT orders.ORDER_ID, " & _
          "employee.FIRST_NAME, employee.LAST_NAME FROM employee, orders " & _
          "WHERE employee.EMPLOY_ID = orders.EMPLOY_ID", dbOpenDynaset)
       'Copy the recordset to Sheet1!A1
       Sheets("Sheet1").Range("A1").CopyFromRecordset rs
       'Close the database and delete the database file Temp.mdb
       db.Close
       Kill "c:\my documents\temp.mdb"
    End Sub
    					

Propriedades

Artigo: 213820 - Última revisão: 3 de fevereiro de 2014 - Revisão: 3.5
A informação contida neste artigo aplica-se a:
  • Microsoft Excel 2000 Standard Edition
Palavras-chave: 
kbnosurvey kbarchive kbmt kbdtacode kbhowto kbinfo kbprogramming KB213820 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: 213820

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