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

IHM Discussion :

DoCmd.SendObject acSendQuery Pouvoir Changer d'utilisateur de Email


Sujet :

IHM

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 208
    Points : 75
    Points
    75
    Par défaut DoCmd.SendObject acSendQuery Pouvoir Changer d'utilisateur de Email
    Bonjour,

    Je me pose une question sur exportation de fichiers EXCELL dans une messagerie, d’une base de données Access.
    J’utilise la ligne de commande ci-dessous sur une requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Commande82_Click()
    DoCmd.SendObject acSendQuery, "Gestion02", acFormatXLS, "utilisateur @.fr", , , "Fiche de besoin", "Fiche Exportation, " & vbCrLf & vbCrLf & "Merci", False
    End Sub
    Y a-t-il une possibilité d’utiliser d’autres utilisateurs de messagerie pour la même ligne de code identique, via une zone de texte ou la création un formulaire carnet d’adresse messagerie.

    Cordialement

    JJacques

  2. #2
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Tu pourrais avoir une table des destinataires qui reprendrait les adresses mail. Dans une boucle, tu pourrais ainsi envoyer le mail à plusieurs autres personnes :

    Exemple :
    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
     
    Private Sub Commande82_Click()
     
    ' Récupération des adresses mail
    Dim l_strSQL as string
    Dim l_rsAdresse as DAO.RecordSet
     
    l_strSQL = "SELECT Mail FROM T_Destinataires"
    SET l_rsAdresse = CurrentDb.OpenRecordset(l_strSQL)
     
    With l_rsAdresse
        ' Lecture des enregistrements du RecordSet
        Do While Not .EOF 
            ' Envoi du Mail à chaque destinataire   
            DoCmd.SendObject acSendQuery, "Gestion02", acFormatXLS, .Fields(0), , , "Fiche de besoin", "Fiche Exportation, " & vbCrLf & vbCrLf & "Merci", False
            ' Changement d'enregistrement dans le RecordSet
            .MoveNext
        Loop
    End With
    End Sub
    Ceci reste un exemple que je n'ai pas testé

    Bonne continuation

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 208
    Points : 75
    Points
    75
    Par défaut
    Merci de votre Aide sur le sujet
    J'ai actuellement pour faire un essai le message suivant :

    Microsoft Visual Basic
    Erreur d'excécution '3061'
    Trop peu de paramètres. 1 attendu

    J'ai crée la table : T_Destinataires
    Nom : TEXTE
    PRENOM : TEXTE
    MESSAGERIE : LIEN HYPERTEXTE

    Et ajouter les lignes de Procédure événementielle sur le Bouton click
    Mais comme j'ai quelques lacunes, je n'ai pas fait la boucle.
    Je pensais créer, ensuite une zone liste déroulante pour sélectionner le Destinataire.

    Si vous avez une solution sur le sujet.

    Cordialement
    JJacques

  4. #4
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Tout d'abord, mille excuses, je n'avais pas compris que tu ne souhaitais ps faire un envoi en série. Si tu bases ton envoi sur une adresse choisie dans la liste déroulante, il faut bien sur supprimer la boucle.

    D'abord, au niveau de la source de la liste déroulante, il serait bon d'y mettre une requête du style

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT NOM & " " & PRENOM as IdNOM, MESSAGERIE FROM  T_Destinataires

    Puis dans la procédure sur clic du bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Commande82_Click()
            ' Envoi du Mail à chaque destinataire   
            DoCmd.SendObject acSendQuery, "Gestion02", acFormatXLS, NomListeDeroulante.Column(1), , , "Fiche de besoin", "Fiche Exportation, " & vbCrLf & vbCrLf & "Merci", False
    End Sub
    Remarque : L'indice (1) de la propriété Column indique à Access de récupérer la valeur de la seconde colonne de la liste déroulante (La première colonne a l'indice 0)

    Quant au message d'erreur, il provient de la requête source "Gestion2"

    Bonne continuation

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 208
    Points : 75
    Points
    75
    Par défaut
    Merci de votre réponse.
    Toute la procèdure que vous m'avez indiquer me semble fonctionner correctement.
    Mais je suis passé à la messagerie Windows live Mail ,depuis peu de temps.
    Je suis toujours en Windows XP. Access 2010
    Et je constate une Erreur d'exécution '2293' (ne peut pas envoyer ce message)
    il y a quelques semaines j'avais une procèdure événementielle qui marchait très bien.Et j'ai peut-être une mise à jour qui c'est effectué entre temps ?
    Je vais faire quelques recherches sur Google pour le soucis que je viens de rencontrer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.SendObject acSendQuery, "Gestion02", acFormatXLS, "adresse@mail.fr", , , "Fiche de besoin", "Fiche Exportation, " & vbCrLf & vbCrLf & "Merci", False
    Cordialement
    JJacques

  6. #6
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 208
    Points : 75
    Points
    75
    Par défaut
    Après quelques recherches, j'ai trouvé une parade pour envoyer la requête : Gestion02
    Avec la procèdure evénementielle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Commande82_Click()
            ' Envoi du Mail à chaque destinataire   
            DoCmd.SendObject acSendQuery, "Gestion02", acFormatXLS, NomListeDeroulante.Column(1), , , "Fiche de besoin", "Fiche Exportation, " & vbCrLf & vbCrLf & "Merci", False
    End Sub
    je suis allé dans Option Internet :
    Programmes :
    Courrier électronique : Outlook Express
    OK
    Ensuite j'ai eu un autre message d'avertissement envoi :

    UN PROGRAMME ESSAIE D'ENVOYER UN MESSAGE EN VOTRE NOM

    Dans les options de Outlook Express, il y a une case à décocher pour ne plus avoir le message.

    Pour se faire il faut ouvrir Outlook Express : outils>option>sécurité puis il faut décocher "M'avertir lorsque d'autres applications tentent d'envoyer des messages de ma part ".

    çà Fonctionne !

    (Si option Internet est configurer Courrier électronique : Windows live mail)
    çà ne fonctionne plus et j'ai le message erreur d'exécution '2293', et je n'ai pas trouvé pour solutionner d'ou viens le problème)

    Cordialement

    JJacques

  7. #7
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    (Si option Internet est configurer Courrier électronique : Windows live mail)
    çà ne fonctionne plus et j'ai le message erreur d'exécution '2293', et je n'ai pas trouvé pour solutionner d'ou viens le problème)
    Peut-être que cette question devrait être posée sur le forum de la messagerie

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

Discussions similaires

  1. Comment changer d'utilisateur de la BD dans le code?
    Par riddick dans le forum Wildfly/JBoss
    Réponses: 4
    Dernier message: 06/05/2007, 10h16
  2. Changer l'utilisateur courant
    Par Fabien Celaia dans le forum Administration
    Réponses: 3
    Dernier message: 23/04/2007, 16h35
  3. Changer l'utilisateur lors de l'execution d'un script de démarrage
    Par kserradell dans le forum Administration système
    Réponses: 2
    Dernier message: 27/09/2006, 17h35
  4. Comment Changer l'utilisateur en cours sur access 2003
    Par schwinny dans le forum Access
    Réponses: 2
    Dernier message: 26/06/2006, 13h44
  5. docmd.sendobject erreur
    Par Fab_ dans le forum Access
    Réponses: 7
    Dernier message: 20/03/2006, 16h56

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