Comment faire pour extraire des informations à partir de la feuille Excel à l'aide de DAO

Traductions disponibles Traductions disponibles
Numéro d'article: 190195 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Le pilote Excel ISAM ne convertit pas dynamiquement les types de données.

Plus d'informations

S'il existe une colonne dans votre feuille de calcul contenant du texte et nombres, l'ISAM ne peut pas interpréter correctement le type de données il doit être. Assurez-vous que toutes les cellules d'une colonne sont mises en forme pour être le même type de données. Par exemple, vous pouvez avoir après les données dans les quatre colonnes dans une feuille Excel :
   male   female children teens
   11     cc     78       ee
   22     xx     33       ff
   45     uu     56       oo
				

Si vous essayez de lire les données par le biais de pilote ISAM par rapport à la totalité de la feuille, vous obtenez les valeurs null de première ligne. Pour éviter ce problème, créez des plages nommées : une contenant uniquement les informations d'en-tête et un autre contenant les informations de données. Par exemple :
   named range 'myRange1' :
   male     female    children     teens

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

Vous pouvez maintenant connecter Excel et demande les informations uniquement à partir de notamment une plage nommée. Toutefois, dans une plage, une colonne particulière peut ne contenir qu'un seul type de données.

Comment faire pour créer une plage

Pour créer une plage, procédez comme suit :
  1. Mettez en surbrillance les données.
  2. Dans la barre de menus, cliquez sur Insérer, puis cliquez sur nom.
  3. Cliquez sur définir, puis cliquez sur nom de plage.
Remarque : La zone fait référence à fait référence à la plage en surbrillance. Il doit s'accroître de diminue lorsque les données sont insérées et supprimées.

Pour récupérer vos données, utilisez le nom de plage que vous venez de créer le nom de la table dans votre instruction select.

Étapes de Excel

  1. Créer le fichier Excel, test.XLS, avec les données suivantes dans Feuil1 :
       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. Créer les plage nommée, myRange1 et myRange2, dans la feuille contenant les données appropriées.
          named range : myRange1
    
          male female children teens
    
          named range  : myRange2
    
          11     cc   78   ee
          22     xx   33   ff
          45     uu   56   oo
    
    					

Étapes de Visual Basic

  1. Créez un nouveau projet EXE standard appelé «DAO_EXCEL.»
  2. Dans le menu projet, cliquez sur références et puis activez la case à cocher Bibliothèque Microsoft DAO 3.5.
  3. Placez un bouton de commande dans le formulaire.
  4. Collez le code suivant dans la fenêtre de code de formulaire :
          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).
    
    					
Les résultats suivants sont comme prévu :
  11
  cc
  78
  ee
  22
  xx
  33
  ff
  45
  uu
  56
  oo
				

Références

Reportez-vous à la documentation pour la connexion à Excel via DAO. Une autre bonne référence sera ADO à venir-> référence Excel.

Propriétés

Numéro d'article: 190195 - Dernière mise à jour: mercredi 2 mars 2005 - Version: 2.3
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Visual Basic 6.0 Édition initiation
  • Microsoft Visual Basic 6.0 Édition professionnelle
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Visual Basic 5.0 Édition professionnelle
  • Microsoft Visual Basic 5.0 Édition Entreprise
  • The DAO SDK
Mots-clés : 
kbmt kbdatabase kbhowto kbiisam KB190195 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 190195
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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