IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

VBA Move Last [AC-2016]


Sujet :

VBA Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2007
    Messages : 38
    Points : 36
    Points
    36
    Par défaut VBA Move Last
    Bonjour,

    Dans une BDD qui sert à signaler des incidents IT, les utilisateurs doivent remplir un formulaire expliquant leurs problèmes. Ces renseignements sont ensuite envoyés automatiquement via email au département IT à la fermeture du formulaire. Le soucis que j'ai avec mon code VBA (ci-dessous) est que si un utilisateur (A) ouvre un incident et que entretemps un autre utilisateur (B) ouvre aussi un incident mais que ce dernier (B) referme en premier son incident (le formulaire donc...) lorsque (A) fermera lui aussi son incident l'email envoyé par (A) contiendra les informations encodées par (B). Je comprends que mon MyRS.moveLast n'est pas approprié...Si vous avez une idée...

    Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    Function sndrpt()
     
    Dim objOutlook As Outlook.Application
    Dim objEmail As Outlook.MailItem
    Dim strbody As String
    Dim strsubject As String
    Dim MyDB As Database
    Dim MyRS As Recordset
     
    Set MyDB = CurrentDb
    Set MyRS = MyDB.OpenRecordset("Issues")
     
    MyRS.MoveLast
     
    Set objOutlook = CreateObject("Outlook.application")
    Set objEmail = objOutlook.CreateItem(olMailItem)
     
             strsubject = MyRS![Subject]
             strbody = MyRS![Description]
     
     
    'Generate email
    With objEmail
     
    .To = "it.department@abc.com"
    .CC = ""
    .Subject = "New issue -" & " " & strsubject
    .Body = strbody
    .Send
     
     
    End With
     
     
    End Function

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 241
    Points : 19 367
    Points
    19 367
    Billets dans le blog
    61
    Par défaut
    Bonsoir,

    Je pensais utiliser un identifiant à la place, en le passant au moment de l'appel de la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Function sndrpt(id as long)
    Dim objOutlook As Outlook.Application
    Dim objEmail As Outlook.MailItem
    Dim strbody As String
    Dim strsubject As String
    Dim MyDB As Database
    Dim MyRS As Recordset
     
    Set MyDB = CurrentDb
    Set MyRS = MyDB.OpenRecordset("Issues")
     
    MyRS.FindFirst "id=" & id
     
       if MyRS.NoMatch then 
          exit function
       end if
     
    ...
     
    end function
    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2007
    Messages : 38
    Points : 36
    Points
    36
    Par défaut
    Bonjour,

    Merci pour votre réponse. Lorsque vous parler d'un ID, je dois utiliser l'identifiant unique (clé primaire) de chaque enregistrements de ma table "Issues"? Si oui que dois-je mettre après le "id=..." (MyRS.FindFirst "id=" & id)?

    Bonne journée

  4. #4
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 241
    Points : 19 367
    Points
    19 367
    Billets dans le blog
    61
    Par défaut
    Bonjour,

    Mon idée serait, après remplissage des renseignements sur le formulaire, au moment de fermer le formulaire, exécuter le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    call sndrpt(Me.Identifiant)
    Où je suppose que le champ identifiant sur le formulaire se nomme "identifiant".

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  5. #5
    Invité
    Invité(e)
    Par défaut
    bonjour,
    personnellement je rajoute un champ PcName qui me permet de signer mes enregistrement avec la mac Adresse de la machine qui effectue la transaction! pas de risque de mélanger le mailing!

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2007
    Messages : 38
    Points : 36
    Points
    36
    Par défaut
    Merci pour votre aide.

    cordialement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mouse Move sur un TreeView [VBA]
    Par Next64 dans le forum Général VBA
    Réponses: 1
    Dernier message: 07/06/2014, 21h04
  2. compteur d'enregistrement-move last
    Par patmar83 dans le forum VBA Access
    Réponses: 3
    Dernier message: 05/04/2011, 17h24
  3. Réponses: 2
    Dernier message: 21/06/2007, 16h26
  4. [VBA-EXCEL] Rst.MoveNext don't move next
    Par Stephane_123 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/12/2006, 19h16
  5. problème avec VBA
    Par Delph dans le forum Langage
    Réponses: 2
    Dernier message: 19/08/2002, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo