|
|
|
|
Bonjour,
C'est la première fois que j'utilise Access et que je consulte du code VBA.
Mon problème est bien simple. Je dois effectué des traitements (validation et conversion) sur des données importées d'un fichier CSV. J'ai importé les données dans une table temporaire. Pour me familiarisé avec le code VBA et Access 2007, j'ai tenté de simplement copier un entré dans ma table temporaire vers ma table réelle. Après avoir consulté plusieurs bout de code sur internet et essayé plusieurs fonctions, c'est toujours sans succès avec des messages d'erreurs tous différents à chaque fois.
J'aimerais solliciter votre aide pour me donner un simple coup de main :)
P.S.: Après ma validation et conversion de données, je n'est plus besoin de garder mes données brutes. C'est la raison pour laquelle j'ai choisi une table temporaire. Peut-être cette approche est déficiente. À vous de me conseiller dans ce cas.
Configuration: Windows XP Firefox 3.0.11 Office 2007
Pour vous donner plus de détail. J'ai une form vide, avec un simple bouton "Traitement". Sur le OnClick du bouton je voudrais être capable de copier le champ Date de ma table temporaire vers le champ Date de ma table réel.
|
Pour ceux qui désire la réponse, voici celles que j'ai trouvées. La différence entre les 2 solutions est que la deuxième ( Command1_Click() ) est fait à partir de requête SQL, il est donc beaucoup plus facile et simple d'ajouter le nombre de champs désirés.
Private Sub Command_Click()
maVarString = DLookup("Date", "Log96 - tronc")
MsgBox maVarString
End Sub
Private Sub Command1_Click()
Dim sql As String
Dim rst As DAO.Recordset
Dim varDate As String
sql = "SELECT DISTINCT [Date] FROM [Log96 - tronc]"
Set rst = CurrentDb.OpenRecordset(sql)
With rst
'traverse toute les records
Do While Not .EOF
'traitement a faire sur ton rst
varDate = rst("[Date]")
MsgBox "La date est " & varDate
Loop 'while not .eof
.Close 'rst
End With
End Sub
Les 2 solutions affichent le résultat dans une boite de message, mais par la suite il est simple de faire un Insert :
CurrentDB().Execute "INSERT INTO table (champ1, champ2) VALUES (" & variable1 & "," & variable2 & ")"
P.S.: log96 - tronc est ma table temporaire. |