SDU95
Messages postés2Date d'inscriptionjeudi 28 septembre 2006StatutMembreDernière intervention23 février 2007
-
20 févr. 2007 à 15:46
SDU95
Messages postés2Date d'inscriptionjeudi 28 septembre 2006StatutMembreDernière intervention23 février 2007
-
23 févr. 2007 à 08:40
Bonjour,
J'ai une base de taux qui s'alimente tous les jours sur un onglet Excel.
Via une macro VBA je transfère ces données vers une base Table Access.
Le problème est que des nouveaux taux arrivent dans ma base de temps en temps et je n'arrive pas à mettre en place un programme VBA me permettant d'ajouter un champ à une table existante sous Access.
Tous les forums parlent de création de tables et création de champs mais pas d'ajout.
Y a-t-il moyen de le faire?
Ci-dessous je laisse le développement qui ne fonctionne pas :
Dim Connex As ADODB.Connection, Rec As ADODB.Recordset, Compt As Long
' Connection à la base Access
Set Connex = New ADODB.Connection
Connex.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=V:\Taux_monetaires\Base_Taux.mdb;"
' Création enregistrement dans la table Tbl_Euribor
Set Rec = New ADODB.Recordset
Rec.Open "Tbl_Euribor", Connex, adOpenKeyset, adLockOptimistic, adCmdTable
With Rec
.Field.Append("Taux_Btan_New")
End With
Rec.Close
Set Rec = Nothing
Connex.Close
Set Connex = Nothing
D'avance merci.
SDU95
A voir également:
Ajouter un enregistrement dans une table access vba
SDU95
Messages postés2Date d'inscriptionjeudi 28 septembre 2006StatutMembreDernière intervention23 février 2007 23 févr. 2007 à 08:40
Merci pour ta réponse.
Je n'ai pas encore tenté les instructions SQL mais je mets ça dans mes explorations futures.
En revanche après bien des déboires et des tests, j'ai enfin trouvé la solution (toute bête quand on voit le code).
Je laisse le code si cela intéresse quelqu'un.
' Ajout d'un champ dans une table Access Existante
Dim Chp As dao.Field
Dim dbsBase As dao.Database, accTable As dao.TableDef
Set dbsBase = dao.OpenDatabase("V:\Taux_monetaires\Copie_Base_Taux.mdb")
Set accTable = dbsBase.TableDefs("tbl_Btan_Matrice")
Set Chp = accTable.CreateField("Nouveau_Champ", dbDate)
cavo789
Messages postés168Date d'inscriptionvendredi 9 janvier 2004StatutMembreDernière intervention28 juillet 20091 22 févr. 2007 à 21:38
Il existe des instructions SQL pour cela. Lance Google avec comme mots cléfs "ALTER TABLE". Tu peux ajouter des champs, en supprimer, renommer, changer le type de données, ...