Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1629 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [EXCEL / VBA] Connexion ADO et recordset "limité"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[EXCEL / VBA] Connexion ADO et recordset "limité"

n°2321585
karoli
Posté le 02-10-2018 à 13:32:10  profilanswer
 

Bonjour,
Je suis en train de faire une petite macro qui va récupérer des données dans 3 classeurs Excel distincts, sans les ouvrir, en vue d'un traitement ultérieur.
 
Je me connecte en ADO, et si pour les deux premiers fichiers, la récupération de données se passe bien, ça coince sur le 3eme :
Je ne veux récupérer qu'une colonne, qui contient 1479 entrées, mais même si le recordset.count vaut 1479, il ne me récupère que 236 lignes.
les données contenues sur les lignes 1 à 236 sont du numérique sur 13 caractères avec un zéro en #1, à partir de la ligne 237, j'ai un mélange d'alpha et de numérique : 2 lettres puis 11 nombres.
Ça semble lui poser problème mais pourquoi ? Merci de votre aide
 
Voici mon code :
 

Code :
  1. Set connexion = New ADODB.Connection   
  2. Set RS = New ADODB.Recordset
  3.        
  4. '--- Connexion ---
  5. With connexion
  6.         .Provider = "Microsoft.Jet.OLEDB.4.0"
  7.         .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _
  8.            & Fichier_src & ";Extended Properties=""Excel 8.0;HDR=No;"""
  9.         .Open
  10. End With
  11.        
  12. Sql = "SELECT * from `" & Onglet_src & "$B2:B2000`"
  13. Set RS = connexion.Execute(Sql)
  14. RS.MoveFirst
  15.                          
  16. ThisWorkbook.Worksheets("Histo contrôles" ).Range("A1" ).CopyFromRecordset RS
  17.                
  18. connexion.Close
  19. Set RS = Nothing
  20. Set commande = Nothing
  21. Set connexion = Nothing


Message édité par karoli le 02-10-2018 à 13:37:05
mood
Publicité
Posté le 02-10-2018 à 13:32:10  profilanswer
 

n°2321630
MaybeEijOr​Not
but someone at least
Posté le 02-10-2018 à 19:44:13  profilanswer
 

Bonjour,
 
D'après : https://support.microsoft.com/fr-fr [...] in-excel-w
OLE DB analyse par défaut les 8 premières lignes du fichier pour définir le type de données de chaque colonne, la seule chose qui semble être modifiable est le nombre de lignes à analyser (entre 1 et 16) ce qui ne permet pas de résoudre ton problème. La seule solution serait alors de "polluer" tes colonnes afin qu'il détecte du texte plutôt que des nombres. Ou alors utiliser une autre solution que OLE DB.


---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
n°2323410
karoli
Posté le 31-10-2018 à 22:43:30  profilanswer
 

MaybeEijOrNot a écrit :

Bonjour,
 
D'après : https://support.microsoft.com/fr-fr [...] in-excel-w
OLE DB analyse par défaut les 8 premières lignes du fichier pour définir le type de données de chaque colonne, la seule chose qui semble être modifiable est le nombre de lignes à analyser (entre 1 et 16) ce qui ne permet pas de résoudre ton problème. La seule solution serait alors de "polluer" tes colonnes afin qu'il détecte du texte plutôt que des nombres. Ou alors utiliser une autre solution que OLE DB.


 
Bonsoir, et merci pour ta recherche et réponse.
J'ai pas eu le temps de m'y replonger sur octobre, mais je vais creuser, et du coup regarder sans oledb
 
Merci encore
Olivier


---------------
FeedBack

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [EXCEL / VBA] Connexion ADO et recordset "limité"

 

Sujets relatifs
Gérer une connexion $_SESSIONLimité une requete PostgreSQL
Connexion à travers un PCLaravel connexion Facebook
Connexion à la base impossible sur 1 PCConnexion base access MDE
lister les champs d'une table en connexion odbcFormulaire créé en javascript limité à 90 "lignes"
Petit problème avec mon formulaire d'inscription/connexionConnexion à sql server 2012 qui sur vmware
Plus de sujets relatifs à : [EXCEL / VBA] Connexion ADO et recordset "limité"


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR