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

Macros et VBA Excel Discussion :

Vba envoi de RDV via Excel avec des données sélectionnées


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juin 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2017
    Messages : 2
    Par défaut Vba envoi de RDV via Excel avec des données sélectionnées
    Bonjour,

    J'ai un fichier Excel ou je fait un suivi de personne ayant un CDD, j'ai fait une macro me permettant de créer un RDV sur Outlook depuis mon fichier excel avec des Inputbox:

    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
    Sub Creation_RDV()
     
    Dim objoutlook As Outlook.Application
    Dim objreunion As Outlook.AppointmentItem
    Dim objexplorer As Outlook.Explorer
    Dim strmail, strsujet, strdate, strduration, strbody As String
     
    Set objoutlook = Outlook.Application
    Set objexplorer = objoutlook.ActiveExplorer
    Set objreunion = objoutlook.CreateItem(olAppointmentItem)
     
            strmail = InputBox("personnes à ajouter", "créer un RDV Outlook etape 1: 'mail'", "valeur par défaut")
            strsujet = InputBox("sujet du Rdv", "créer un RDV Outlook etape 2")
            strdate = InputBox("Date de rappel, format: date heures", "créer un RDV Outlook etape 3")
            strduration = InputBox("Durée", "créer un RDV Outlook etape 4")
     
     
     
    With objreunion
     
        .MeetingStatus = olMeeting
        .Recipients.Add (strmail)
        .Subject = strsujet
        .Start = strdate
        .Duration = strduration
        .Display
     
    End With
     
    Set objoutlook = Nothing
    Set objreunion = Nothing
    Set objexplorer = Nothing
     
     
    End Sub
    je souhaiterais améliorer cette macro mais la j’atteins mes limites (qui ne sont pas très élevé ).

    J'aimerais qu'a la place des Inputbox il y ai un code qui me remplisse du fait de ma sélection les différents items .

    Par exemple je met a jours mon dossier j'ajoute une ligne (16) je voudrais qu'en sélectionnant
    ma ligne le sujet se remplisse automatiquement avec la cellule I 16.

    Pouvez- vous m'aider ?

    Merci d'avance.

    Bonne journée.

  2. #2
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Par défaut
    Bonjour et bienvenue au forum !
    Comment doit se lancer la macro ? Est-ce que c'est toujours I16 qui comporte le sujet ?
    Pour récupérer la valeur d'une cellule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strsujet = Range("I16").Value
    Si tu veux récupérer la valeur de la cellule active (par ex. tu sélectionnes une celule, puis tu lances la macro) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strsujet = ActiveCell.Value
    Pour récupere la ligne de la cellule active :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim myRow As Long
    myRow = ActiveCell.Row
    Ensuite, pour obtenir les valeurs des autres colonnes de la ligne, par ex. :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strmail = Range("A" & myRow).Value
    Mais pour t'aider, il faudrait un peu plus de précisions sur quand est-ce que doit se lancer la macro ? Quel est l'élément déclencheur ? Comment sait-on quelle cellule il faut prendre en compte ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juin 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2017
    Messages : 2
    Par défaut
    Citation Envoyé par riaolle Voir le message
    Bonjour et bienvenue au forum !
    Comment doit se lancer la macro ? Est-ce que c'est toujours I16 qui comporte le sujet ?
    Pour récupérer la valeur d'une cellule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strsujet = Range("I16").Value
    Si tu veux récupérer la valeur de la cellule active (par ex. tu sélectionnes une celule, puis tu lances la macro) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strsujet = ActiveCell.Value
    Pour récupere la ligne de la cellule active :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim myRow As Long
    myRow = ActiveCell.Row
    Ensuite, pour obtenir les valeurs des autres colonnes de la ligne, par ex. :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strmail = Range("A" & myRow).Value
    Mais pour t'aider, il faudrait un peu plus de précisions sur quand est-ce que doit se lancer la macro ? Quel est l'élément déclencheur ? Comment sait-on quelle cellule il faut prendre en compte ?

    Bonjour riaolle,

    Merci pour ta réponse, la macro se lance avec un bouton au quelle la macro est attaché.

    il n'y a que cette cellule qui est a prendre en fonction du tableau le reste se remplie avec les Inputbox.

    avec ta solution il faut avant de lancer la macro se mettre sur la cellules en question ?

    Car je voudrai qu'il n'y ai besoin que de sélectionner la ligne (exemple la ligne 16) et qu'avec la macro avoir un code pour dire en gros comme j'ai sélectionné cette ligne je veux prendre en compte la cellule I 16.

    Merci.

Discussions similaires

  1. Envoi mail lotus via excel avec pièce jointe
    Par Mokia34 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 19/01/2016, 22h02
  2. VBA insertion d'une formule somme avec des données dynamique
    Par yann26 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/06/2014, 16h32
  3. [Débutant] comment remplir un tableau sous excel avec des données de DGV?
    Par spring.time dans le forum VB.NET
    Réponses: 6
    Dernier message: 26/10/2012, 20h36
  4. [XL-2007] Aide sur l'envoi d'une feuille excel avec vba
    Par MelanieK dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/02/2012, 21h51
  5. Réponses: 1
    Dernier message: 08/10/2008, 15h30

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