Excel / VB MAJ Fichier par un autre fichier
Fermé
PISKAL66
Messages postés
2
Date d'inscription
mercredi 2 juin 2010
Statut
Membre
Dernière intervention
3 juin 2010
-
2 juin 2010 à 23:26
PISKAL66 Messages postés 2 Date d'inscription mercredi 2 juin 2010 Statut Membre Dernière intervention 3 juin 2010 - 3 juin 2010 à 20:50
PISKAL66 Messages postés 2 Date d'inscription mercredi 2 juin 2010 Statut Membre Dernière intervention 3 juin 2010 - 3 juin 2010 à 20:50
A voir également:
- Excel / VB MAJ Fichier par un autre fichier
- Fichier rar - Guide
- Fichier host - Guide
- Fichier iso - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
1 réponse
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
3 juin 2010 à 10:59
3 juin 2010 à 10:59
Bonjour,
Tu peux le faire avec une connexion ADO.
Il faut activé la référence Microsoft ActiveX Data Objects x.xx Library.
Ensuite dans un module, copier/coller ce code :
Et pour lancer la MAJ lors de l'ouverture, il faut aller dans l'éditeur de Thisworkbook et copier ce code:
;o)
Tu peux le faire avec une connexion ADO.
Il faut activé la référence Microsoft ActiveX Data Objects x.xx Library.
Ensuite dans un module, copier/coller ce code :
Sub MAJ() Dim ws As Worksheet Dim lig As Long Dim str As String Set ws = Worksheets(1) lig = 2 While ws.Range("A" & lig).Value <> "" str = queryOpen(ws.Range("A" & lig).Value) ws.Range("B" & lig).Value = str lig = lig + 1 Wend End Sub Function queryOpen(ByVal Id As Long) As String Dim Source As ADODB.Connection Dim Requete As ADODB.Recordset Dim Fichier As String, xSQL As String Dim i As Long Fichier = "C:\Fichier2.xls" 'Mettre le chemin complet de la base Set Source = New ADODB.Connection Source.Open "Provider = Microsoft.Jet.OLEDB.4.0;" & _ "data source=" & Fichier & ";" & _ "extended properties=""Excel 8.0;HDR=Yes""" xSQL = "SELECT [Feuil1$].FACTURE PAYEE FROM [Feuil1$] " & _ "WHERE [Feuil1$].ID CLIENT =" & Id Set Requete = New ADODB.Recordset Set Requete = Source.Execute(xSQL) queryOpen = Requete.fields(0) Requete.Close Source.Close End Function
Et pour lancer la MAJ lors de l'ouverture, il faut aller dans l'éditeur de Thisworkbook et copier ce code:
Private Sub Workbook_Open() Module1.MAJ End Sub
;o)
3 juin 2010 à 20:50
ouf j'étais pas prêt de trouver !! merci beaucoup je vais essayer de tester ça !!
Merci