Enregistrer les données contenues dans un formulaire excel (text

JJBunker Messages postés 7 Statut Membre -  
 JJBunker -
Bonjour,
je suis nouveau dans la Forum et surtout dans VBA/ACCESS/EXCEL.
En fait je cherche à enregistrer des Infos dans un Tableau Access à l'aide d'un formulaire Excel.

Voici mon code, quand je le compile il Affiche nombre d'arguments insuffisants et l'erreur est marquée sur l'avant derniere ligne...J'ai deja tout verifié et changé maintes fois...sans succes...merci de me montrer quoi faire. f1-f5 sont les noms des textboxes dans lesquelles les données seront inscrites.

Mon code

Private Sub savebutton_click()

Dim strSql As String

Dim db As Database
Dim databasepath As String

databasepath = ActiveWorkbook.Path & "\TEST_Rating.accdb"

Set db = DBEngine.Workspaces(0).OpenDatabase(databasepath)

strSql = "INSERT INTO Kunden ('requester', 'Kuerzel_360T', 'KundenID', 'Alpha_CODE_FX_PRO', ' RatingID')" _
& "VALUES (f1, f2, f3, f4, f5);"

db.Execute strSql, dbFailOnError

Unload UserForm2

End Sub

Merci

5 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    pour une partie:
    strSql = "INSERT INTO Kunden ('requester', 'Kuerzel_360T', 'KundenID', 'Alpha_CODE_FX_PRO', ' RatingID')" _
    & "VALUES ('" & f1 & "','" & f2 & "','" & f3 & "','" & f4 & "','" & f5 & "');"

    requester et les autres champs, est-ce des variables ou le nom des champs?
    0
  2. JJBunker
     
    Hi f894009,
    requester et les autres sont les noms des colonnes dans le Tableau Kunden de la base de donnée dans Access,

    f1-f5 sont les noms des textboxes du userform..

    ca ne marche tjrs pas.
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,

      ca ne marche tjrs pas.
      Oui, je sais!
      Enlevez les ' qui entourent les noms de champ
      0
      1. JJBunker > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
         
        deja fait et tjrs sans success
        0
      2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > JJBunker
         
        Re,

        Si vos fichier excel et accdb sont sans donnees confidentielles( ou modifez les), pouvez-vous les mettre a dispo

        Pour transmettre un fichier,
        Veillez a ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
        il faut passer par un site de pièce jointe tel que cjoint.com

        Allez sur ce site : https://www.cjoint.com/
        Clic sur parcourir,
        Cherche ton fichier,
        clic sur ouvrir,
        Clic sur "Créer le lien cjoint",
        Copier le lien,
        Revenir ici le coller dans une réponse...
        0
  3. JJBunker
     
    merci BCP

    http://www.cjoint.com/c/GCyjhGPc1gs

    si questions, je suis Dispo
    merci
    0
  4. JJBunker
     
    Avez vous pu l'ouvrir?

    merci
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Re,
      Oui. Y avait pas plus long comme nom de fichier?
      Il me faut la base!
      0
    2. JJBunker
       
      je ne comprends pas trop ce que tu entends par la base..
      je vais te donner les deux fichiers qui doivent etre (ouverts )dans le mm Repertoire.
      voici leurs liens

      http://www.cjoint.com/c/GCylSOSTl4s (pour le doc excel)
      http://www.cjoint.com/c/GCylTEOunFs ( pour le doc Access)

      comme j'ai dit, il doit avoir le meme Repertoire/ dans le mm dossier

      merci
      0
    3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > JJBunker
       
      Re,

      jusqu'a preuve du contraire un fichier accdb ou mdb est une base de donnee!
      0
    4. JJBunker > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
       
      hi apparemment je ne t'avais pas compris...
      j'espere qúe tu parviens à faire qqch avec..
      0
    5. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717 > JJBunker
       
      Re,

      j'espere qúe tu parviens à faire qqch
      Si vous me dites dans quelle userform et quelles sont les tetxbox f1-f5 car pour le moment dans le seul evenement Private Sub savebutton_click() dans UF4 y a pas de code et pas de textbox f1-f5. Donc j'attends vos explications
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. JJBunker Messages postés 7 Statut Membre
     
    MErci
    0
    1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Bonjour,
      Ok, je regarde

      SUITE:

      regardez la difference entre ci-dessous et l'original.
      Pas mettre a jour le champ KundenID puisque c'est la cle, sauf si vous voulez quand meme la modifier mais faudra mettre en memoire la valeur de depart

      Private Sub Update_Click()
      
          Dim strSql As String
          Dim db As Database
          Dim databasepath As String
          Dim fieldIsEmpty As Boolean
          fieldIsEmpty = False
      
          databasepath = ActiveWorkbook.Path & "\TEST_Rating.accdb"
          
          Set db = DBEngine.Workspaces(0).OpenDatabase(databasepath)
          If f1 = "" Or f2 = "" Or f3 = "" Or f4 = "" Or f5 = "" Then
              MsgBox "!!Bitte füllen Sie alle Felder aus!!"
              fieldIsEmpty = True
          Else
              strSql = "UPDATE Kunden SET Requester ='" & f1 & "', RatingID = '" & f3 & _
                  "', Kuerzel_360T = '" & f4 & "', Alpha_CODE_FX_PRO = '" & f5 & "' WHERE KundenID =" & CLng(f2) & ";"
              db.Execute strSql, dbFailOnError
              Set db = Nothing
          End If
      End Sub
      0
    2. JJBunker Messages postés 7 Statut Membre > f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci
      super Ca a marché... je vais essayer de chercher le code pour la procedure inverse pour effacer des données avec DELETE...
      je ne crois pas que cela devrait etre le cheval de trois (troie) mais de deux.

      Merci encore
      Je vais poster mon code si j'y arrive ou pas
      0
    3. JJBunker Messages postés 7 Statut Membre
       
      Voici mon code là

      Private Sub CommandButton1_Click()

      Dim strSql As String
      Dim db As Database
      Dim databasepath As String

      databasepath = ActiveWorkbook.Path & "\TEST_Rating.accdb"

      Set db = DBEngine.Workspaces(0).OpenDatabase(databasepath)


      strSql = "DELETE * from Kunden WHERE KundenID =" & CLng(f2) & ";"

      db.Execute strSql, dbFailOnError

      Set db = Nothing

      MsgBox "Die eingegebenen Daten wurden gelöscht"

      End Sub
      0
    4. JJBunker Messages postés 7 Statut Membre > JJBunker Messages postés 7 Statut Membre
       
      merci encore
      f894009
      0
    5. JJBunker Messages postés 7 Statut Membre
       
      Une autre question stp:
      je ne voudrais pas que les additions soient arrondies mais les valeurs exactes dans mes textboxs... aurais tu un code pour moi?
      je crois que le USERFORM1 contient toutes ces Infos..... si tu clik sur SPT+, tu verras la premiere ligne (SPT) s'ajouter au Tableau d'enbas et les resultats seront changés dans le Tableau gauche.
      mais si tu mets des valeurs decimales, elles seront arrondies.

      THX
      0