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]Email Sélection messages


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Par défaut [VBA]Email Sélection messages
    Bonjour,
    J'ai un code me permettant dans Emailing de sélectionner un message... ceci se fait en tapant un chiffre (correspondant au ID_mess) dans une Inputbox. Je souhaiterais remplacer cela par une LISTE DEROULANTE ou seraient listés les "sujets" (correspondants à un autre champ de ma table messages)... ce qui me paraît plus convivial et dynamique. Est-ce possible au sein de mon code ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    vRéponse = InputBox("Quel message voulez-vous envoyer ? Tapez dernier ou le numéro correspondant.", "Liste de diffusion")
            If LCase(vRéponse) <> "dernier" And Val(vRéponse) <= 0 Then Exit Sub
            If LCase(vRéponse) = "dernier" Then
            vMessages.MoveLast
            vTrouvé = True
            End If
            If Val(vRéponse) > 0 Then
            vMessages.FindFirst "IDmess=" & Val(vRéponse)
            If vMessages.NoMatch Then
            MsgBox "Ce message n'existe pas", vbOKOnly + vbCritical, "Liste de diffusion"
            Else
            vTrouvé = True
            End If
            End If

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Une fois de plus, tu as de la chance que le soleil brille.

    C'est pas ce code qu'il faut changer.

    Il faut créer dans ton formulaire de départ une liste et simplement utiliser cette liste pour sélectionner ton texte.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vReponse = Me.listedechoix
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  3. #3
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Par défaut
    Merci pour tes réponses toujours aussi lucides... Mon code est devenu ainsi :

    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
    Set olApp = Outlook.Application
      Set vMessages = CurrentDb.OpenRecordset("R_Messages")
      vTrouvé = False
      Do While vTrouvé = False
      
        vRéponse = Me.Message_Type
            If Val(vRéponse) > 0 Then
            vMessages.FindFirst "IDmess=" & Val(vRéponse)
            If vMessages.NoMatch Then
            MsgBox "Vous devez sélectionner un message", vbOKOnly + vbCritical, "Liste de diffusion"
            Else
            vTrouvé = True
            End If
           End If
           Loop
        
      vSujet = vMessages.Fields("Sujet")
      vContenu = vMessages.Fields("Body")
      vMessages.Close
      Set vMessages = Nothing
    [/CODE]

    Par contre, Je n'arrive pas à gérer la partie en gras... Si je l'enlève, le code plante et si je la laisse pas de message. En fait je souhaiterai gérer le cas toujours possible de l'utilisateur oubliant de sélectionner un message dans la liste déroulante ce qui conduit inévitablement à ce qui s'affiche dans la pièce jointe... Pas de gestion de Null ! (heureusement que je ne suis pas susceptible)...

    A part cela, départ pour les Marquises dans les heues à venir avec une petite plongée dans une dizaine d'heures. Pensées à ceux qui subissent un printemps moyen pour l'instant et une petite PJ pour vous aider !
    Images attachées Images attachées  

  4. #4
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Par défaut
    J'ai oublié la vraie PJ du message !!!
    Images attachées Images attachées  

  5. #5
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Le printemps pour l'instant n'est pas moyen, c'est blue sky.
    Le premier code était alors incomplet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Set olApp = Outlook.Application
     
      vSujet = Me.Message_type.column(x)
      vContenu = Me.Message_type.column(y)
    Devrait mieux passer.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  6. #6
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Par défaut
    Merci pour ce "tchat" rapide par email alors que nous sommes à 18000kms l'un de l'autre. je crois que je me suis mal fait comprendre... Ok pour le complément du code concernant les colonnes adjacentes mais le problème du null c'est quand ll'utilisateur a oublié de sélectionner un item dans la liste déroulante... Celle-ci reste vierge et par oncséquent le message d'erreur survient...
    J'aurai voulu rajouter un else donnant la CATenir en cas de liste déroulante null derrière ce morceau de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If Val(vRéponse) > 0 Then
            vMessages.FindFirst "IDmess=" & Val(vRéponse)
    en supprimant ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If vMessages.NoMatch Then
            MsgBox "Vous devez sélectionner un message", vbOKOnly + vbCritical, "Liste de diffusion"
    mais là je ne sais pas m'y prendre...

    Quand j'ai sélectionné un message OK ca fonctionne mais quand il n'y a pas de message encore SELECTIONNE dans la liste un message du style vous devez sélectionner... A moins que j'en mette un par défaut !
    Désolé...

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

Discussions similaires

  1. [VBA-E]Sélection de plusieurs colonnes
    Par illight dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 27/11/2017, 23h19
  2. [VBA-E]Sélection Onglet
    Par os_rouen dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 10/04/2006, 09h20
  3. [VBA-E]Annulation message
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 03/04/2006, 11h05
  4. [VBA-E+SQL] Message d'erreur et excel qui plante
    Par Deejoh dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/02/2006, 16h28
  5. VBA EXCEL - Sélection d'une ligne suivant saisie
    Par brethomeau dans le forum Macros et VBA Excel
    Réponses: 48
    Dernier message: 15/11/2005, 17h41

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