Rechercher : dans
Par :

Copier des champs d'une table Access

Dernière réponse le 22 jun 2009 à 22:30:44 SilverM-A, le 22 jun 2009 à 18:10:52 
 Signaler ce message aux modérateurs

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

Meilleures réponses pour « Copier des champs d'une table Access » dans :
SQL - Modification de table VoirModification de table Il est possible de supprimer une table grâce à la clause DROP, il existe aussi des commandes moins extrêmes permettant L'ajout de colonnes La modification de colonnes La suppression de colonnes Enfin, il est possible...

1

qmike, le 22 jun 2009 à 18:34:51

Bonjour
Oui et la question ?

Répondre à qmike

2

SilverM-A, le 22 jun 2009 à 19:07:14

Je souhaite simplement savoir comment procéder. Un exemple de code VBA, un site ou n'importe quoi qui pourrait m'aider. Déjà savoir comment accéder à un entré dans une table, il me serait facile par la suite d'explorer par moi-même.

Merci :)

Répondre à SilverM-A

3

SilverM-A, le 22 jun 2009 à 20:22:44

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.

Après avoir compris cela, je devrais être capable de modifier mon code pour effectuer les conversion qui me sont nécessaire.

Merci

Répondre à SilverM-A

4

 SilverM-A, le 22 jun 2009 à 22:30:44

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.

Répondre à SilverM-A