Access copie partielle

enlérga -  
LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un formulaire qui me permet de remplir ma table grâce à des champs à compéter, chacun correspondant à une colonne de la table.

J'ai besoin de copier un enregistrement quand le formulaire est rempli (copier ce que j'ai entré dans le formulaire) MAIS PAS TOUT , il y a certains champs que je ne voudrais pas copier( qui ne doivent pas êrte modifié) et que je voudrais qu'ils soient vide sur la copie. C'est à dire faire une copie mais pas de certains champs ( peut-être pouvoir selectionner ce que je veux copier si cela est possible)

J'ai fais un bouton de duplication mais cela copie tout, donc c'est pas bon...

Merci D'avanace !
Configuration: Windows XP
Internet Explorer 6.0

7 réponses

  1. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Dans le module attaché au bouton qui copie, tu rajoutes pour chaque champ qui doit rester vide:

    Me!NomDuChamp.Value = Null
    0
    1. enlérga
       
      Je ne comprends pas cette notion de "module"...

      J'ai simplement créer un bouton sur le formulaire de cette maniére:

      catégorie : " Opéations sur enreg." > Actions:" Dupliquer un enregistrement"
      0
    2. enlérga
       
      J'ai vraiment besoin de cela, s'il te plait...

      Pourrait tu me dire à quelle endroit on entre ce type d'éxpression??

      Merci !!
      0
  2. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Tu vas dans les propriétés du bouton, tu affiches la procédure évenementielle Sur Clic, tu copies ce qui s'affiche et tu me le postes, ok? Je rajouterai ce qui manque.

    Je ne peux pas faire un cours complet de VB Access ici. Un coup de pouce, je veux bien...
    0
    1. enlérga
       
      Private Sub Commande50_Click()
      On Error GoTo Err_Commande50_Click


      DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

      Exit_Commande50_Click:
      Exit Sub

      Err_Commande50_Click:
      MsgBox Err.Description
      Resume Exit_Commande50_Click

      End Sub
      ______________________________________________________________
      Private Sub Commande51_Click()
      On Error GoTo Err_Commande51_Click


      DoCmd.Close

      Exit_Commande51_Click:
      Exit Sub

      Err_Commande51_Click:
      MsgBox Err.Description
      Resume Exit_Commande51_Click

      End Sub
      ______________________________________________________________
      Private Sub Commande58_Click()
      On Error GoTo Err_Commande58_Click


      DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
      DoCmd.DoMenuItem acFormBar, acEditMenu, 2, , acMenuVer70
      DoCmd.DoMenuItem acFormBar, acEditMenu, 5, , acMenuVer70 'Paste Append

      Exit_Commande58_Click:
      Exit Sub

      Err_Commande58_Click:
      MsgBox Err.Description
      Resume Exit_Commande58_Click

      End Sub



      J'ai copié toute la page qui s'est affiché (ce que j'avais en fasse de moi était à partir du 3éme PRIVATE) !
      Je t'aurais bien donné les champs à ne pas copier mais il en a au moins 15...
      Tu m'éxpliquera juste comment faire avec un exemple !

      Merci Bien c'est gentil !!
      0
  3. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Le Commande50 enregistre tes données, le Commande 51 ferme (le formulaire sans doute), c'est le 58 qui duplique.
    (Enregistre puis copie puis colle par ajout, en fait)

    Une fois que c'est ajouté il faut donc remettre les champs à blanc:

    DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
    DoCmd.DoMenuItem acFormBar, acEditMenu, 2, , acMenuVer70
    DoCmd.DoMenuItem acFormBar, acEditMenu, 5, , acMenuVer70 'Paste Append
    Me!NomDuChamp1.Value = Null
    Me!NomDuChamp2.Value = Null


    etc etc etc...

    0
    1. enlérga
       
      Lorsque je rajoute cela: Me!Budget Previsionnel (en k€).Value = Null

      Ce message d'erreur s'affiche

      < Erreur de compilation:

      Attendu:= >


      C'est peut être à cause des espaces dans le nom du champ..enfin je sais pas
      0
  4. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Mets des crochets autour du nom de champ.
    0
    1. enlérga
       
      Merci avec les crochets ça marche.

      Mais y'a un petit souci...pas dans la copie elle marche bien la copie, mais le truc c'est que quand tu copies ça crée une deuxième fiche mais j'aimerais bloquer la roulette pour pas faire défiler les fiches!!

      J'explique:

      Je sais pas si tu as deja remarqué, on a tendance à faire tourner la roulette de la souris pour faire descendre ou monter la page, mais dans un formulaire ça fais passer à la fiche suivante !! Donc on peut perdre l'endroit ou on travail si on a plein de fiches!!

      C'est possible de bloquer la roulette sur les formulaires et que si il veut changer de fiche, l'utilisateur clic lui même sur la flèche??
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    J'ai déjà vu des posts là dessus, c'était compliqué, un peu. Il n'y a pas juste une option à cocher quelque part...

    Voilà ce que 'avais trouvé...

    http://www.self-access.com/access/grenier/acRedir.php?id=131
    0
    1. enlérga
       
      okok merci ! :)
      0
  7. enlérga
     
    Salut,

    Pourrais-tu m'expliquer cette expression: Me!NomDuChamp1.Value = Null
    Que veut dire le : Me!

    Merci
    0
  8. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Me! veut dire formulaire actif.
    0