Maintenir connexion ODBC (vba)
Fermé
Utilisateur anonyme
-
Modifié par microoctet le 3/07/2013 à 18:36
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 4 juil. 2013 à 14:16
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 4 juil. 2013 à 14:16
A voir également:
- Maintenir connexion ODBC (vba)
- Gmail connexion - Guide
- Gmail connexion autre compte - Guide
- Connexion chromecast - Guide
- Facebook connexion - Guide
- Site inaccessible n'autorise pas la connexion - Guide
3 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 312
4 juil. 2013 à 07:18
4 juil. 2013 à 07:18
Bonjour,
Sans voir le code et sans connaitre le contexte (nombre et caractéristiques des données importées, des champs de données, du nombre de lignes...), il parait difficile de formuler une réponse
Sans voir le code et sans connaitre le contexte (nombre et caractéristiques des données importées, des champs de données, du nombre de lignes...), il parait difficile de formuler une réponse
Utilisateur anonyme
4 juil. 2013 à 08:26
4 juil. 2013 à 08:26
Hum, je vous l'accorde.
Voila, macro générée par Excel, si on ne peut pas parvenir à maintenir la connexion de cette manière, c'est pas grave, je veux juste que le résultat final soit affiché dans un tableau sur une feuille (comme ici)
Sub Macro1() ' ' Macro1 Macro ' Application.DisplayAlerts = False With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _ "ODBC;DATABASE=BDD;DSN=TEST;UID=TEST;;", Destination:=Range( _ "$A$1")).QueryTable .CommandText = Array( _ "SELECT Reference, EnStock, Stockage, Qutite, PieceNo, QteReserve" & Chr(13) & "" & Chr(10) & "FROM STOCK STOCK" & Chr(13) & "" & Chr(10) & "WHERE (Reference='012345" _ , "0')") .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInfo = True .ListObject.DisplayName = _ "Tableau_Lancer_la_requête_à_partir_de_BDD" .Refresh BackgroundQuery:=False End With End Sub
Voila, macro générée par Excel, si on ne peut pas parvenir à maintenir la connexion de cette manière, c'est pas grave, je veux juste que le résultat final soit affiché dans un tableau sur une feuille (comme ici)
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 312
Modifié par michel_m le 4/07/2013 à 14:17
Modifié par michel_m le 4/07/2013 à 14:17
cela parait difficile d'améliorer la vitesse
on peut quand m^me ajouter cette ligne en début de macro
mais ce sera minime
Si tu emploies displayalert, il faut fermer à la fin
application.displaualerts=True
bien que je ne vois pas l'utilité de displayalerts dans ce code, non le supprimer
quant à la déconnexion, la base étant sur le serveur, cela permet l'accès à d'autres si la database du type fichier (et non client serveur) comme par exemple Access
Michel
on peut quand m^me ajouter cette ligne en début de macro
Application.screnupdating=False
mais ce sera minime
Si tu emploies displayalert, il faut fermer à la fin
application.displaualerts=True
bien que je ne vois pas l'utilité de displayalerts dans ce code, non le supprimer
quant à la déconnexion, la base étant sur le serveur, cela permet l'accès à d'autres si la database du type fichier (et non client serveur) comme par exemple Access
Michel