Soyez le premier à donner votre avis sur cette source.
Snippet vu 31 253 fois - Téléchargée 24 fois
Public Function VerifAttach() As Boolean Dim tdf As DAO.TableDef, strTemp As Variant, strPath As String, i As Long For Each tdf In CurrentDb.TableDefs ' recherche d'une table liée If tdf.Connect <> "" Then strTemp = Split(tdf.Connect, ";") For i = LBound(strTemp) To UBound(strTemp) ' recherche du paramètre de connection If strTemp(i) Like "DATABASE=*" Then strPath = Split(strTemp(i), "=")(1) ' vérification de l'existence de la bdd Coclico If Dir(strPath) <> "" Then Coclico_VerifAttach = True Exit Function End If End If Next i End If Next End Function Public Sub DeleteTables() ' supprimer toutes les tables attachées On Error Resume Next Dim db As DAO.Database 'Database to import Dim tdf As DAO.TableDef Dim arrTablename() As String, i As Long ReDim arrTablename(0) Set db = CurrentDb ' répertorier les tables à supprimer For Each tdf In db.TableDefs If tdf.Connect <> "" Then ReDim Preserve arrTablename(UBound(arrTablename) + 1) arrTablename(UBound(arrTablename)) = tdf.Name End If Next ' suppression For i = LBound(arrTablename) To UBound(arrTablename) db.TableDefs.Delete arrTablename(i) Next i Set db = Nothing End Sub Public Function ActualiserAttaches(ByVal strCheminBd As String, Optional ByVal strMotPasse As String = "") As Boolean On Error GoTo ActualiserAttaches_Err Dim tdf As DAO.TableDef Dim arrTablename As Variant, arrSourceName As Variant, strSourceConnect As String, i As Long arrTablename = Array("Activite", "RaisonSociale", "Region", "Site") arrSourceName = Array("Activités", "Raison_sociale", "Region", "Site") strSourceConnect = "MS Access;PWD=" & strMotPasse & ";DATABASE=" & strCheminBd ' supprimer les tables avant tout DeleteTables ' créer les tables For i = LBound(arrTablename) To UBound(arrTablename) Set tdf = New TableDef tdf.Name = arrTablename(i) tdf.SourceTableName = arrSourceName(i) tdf.Connect = strSourceConnect CurrentDb.TableDefs.Append tdf Next i ActualiserAttaches = True Exit Function ActualiserAttaches_Err: MsgBox "Error " & Err.Number & " (" & Err.Description & _ ") in Function ActualiserAttaches of Module mdFonctions", vbCritical End Function
11 janv. 2011 à 22:54
hey ça fait presque 4 ans que j'ai posté ce code :D si quelqu'un le converti en ADO il faudrait ajouter le lien ici histoire de tenir à jour ^^
10 janv. 2011 à 17:14
J'aimerai savoir s'il est possible d'adapter ce code en ADO ?
Merci
15 févr. 2010 à 19:21
enfin, sauf quand on n'a pas la réponse... à mon avis c'est juste pas possible, c'est pour ça que je proposais ma méthode, l'exécution automatique, tu peux vérifier si le fichier est accessible ou pas et faire la connection en fonction.
14 févr. 2010 à 18:14
Cependant, je ne m'attendais pas à cette réponse. Je reformule donc plus simplement : comment créer une attache ou màj la propriété .Connect vers la table d'un fichier de base de données MS Access inaccessible ?
Je confirme que c'est hyper utile pour de multiples raisons.
13 févr. 2010 à 20:12
et bien vérifier qu'il n'est pas déjà attaché, ainsi on accélère l'ouverture lorsque le fichier est déjà correctement relié au back.
(date de création = 3 ans déjà!)
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.