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 :

Nom d'objet outlook variable


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Etudiant Ingénieur en Urbanisme
    Inscrit en
    Juillet 2017
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Etudiant Ingénieur en Urbanisme
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2017
    Messages : 20
    Par défaut Nom d'objet outlook variable
    (Re)Bonjour !

    Avant qu'on me tape sur les doigts, j'ai cherché sur le forum un sujet similaire et j'ai trouvé ce post "Nom objet variable" datant du : 04/09/2006, 09h51 mais je ne comprend pas et n'arrive pas à l'appliquer à mon cas.

    J'écris actuellement une macro pour envoyer automatiquement un rappel outlook. Le code est fini et fonctionne pour une ligne mais quand j'en sélectionne plusieurs (via l'inputbox au début du code), un seul rappel est envoyé à la date et avec les infos de la dernière ligne de ma plage.

    J'ai un compteur de lignes NbrObj (NbrObj= RappelsACreer.Rows.Count) où RappelsACreer est la plage sélectionnée.

    Mon objet outlook s'appelle myItem et voici tout ce que je déclare concernant Outlook :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim OlApp As Object
    Dim myItem As Object
     
    Set OlApp = CreateObject("Outlook.Application")
    Set myItem = OlApp.CreateItem(3)
    (J'ai trouvé ça sur le site, merci )

    J'imagine qu'il faut que je déclare un nombre d'objet "MyItem" en fonction de NbrObj type for i = 1 to NbrObjet dim MyItem "i" as Object mais, étant débutant, je ne connais pas la syntaxe précise ni comment l'utiliser après, j'ai pensé à des trucs genre MyItem&i mais ça ne semble pas marcher.
    Je ne sais pas non plus s'il faut que je fasse la même chose pour les autres paramètres.

    En espérant avoir été intelligible,

    D'avance, merci

    ThibaultNJ, nul en VBA.

    PS : J'ai pas balancé tout mon code pour que ce soit lisible, mais c'est pas confidentiel donc si besoin j'envois ça

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Salut;

    si tu as la volonté de faire
    -1 ligne = 1 rappel
    =>alors tu dois partir sur une boucle englobant ton code comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set OlApp = CreateObject("Outlook.Application")
    For i = 1 To NbrObj
    Set myItem = OlApp.CreateItem(3)
    ...
    Next
    - n lignes = 1 rappel
    => il faudra que la boucle soit un cran plus bas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set OlApp = CreateObject("Outlook.Application")
    Set myItem = OlApp.CreateItem(3)
    For i = 1 To NbrObj
    ...
    Next
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre averti
    Homme Profil pro
    Etudiant Ingénieur en Urbanisme
    Inscrit en
    Juillet 2017
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Etudiant Ingénieur en Urbanisme
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2017
    Messages : 20
    Par défaut
    J'avais pas vu le problème sous cet angle, merci ça marche impec !

    Il y a souvent une réponse facile à une question complexe, j'adore coder

    PS : Un moyen simple d'oublier l'input box et de faire en sorte que les nouvelles lignes soient traitées automatiquement quand on lance la macro via le bouton sur la feuille ? (j'ai déjà un flag anti doublon dans le programme pour pas qu'il créer deux fois un rappel pour la même ligne)

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonsoir,
    Tu rajoutes un flag traité et tu envois tout sauf les deux flag!

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

Discussions similaires

  1. [POO] nom d'objet en variable dynamique
    Par mayadev dans le forum Langage
    Réponses: 3
    Dernier message: 17/04/2009, 15h26
  2. Nom d'objet avec variable, possible?
    Par CleeM dans le forum Delphi
    Réponses: 10
    Dernier message: 26/06/2007, 18h03
  3. Nom d'objet variable
    Par lyrix dans le forum Langage
    Réponses: 5
    Dernier message: 04/06/2007, 11h03
  4. Utiliser des variables dans les noms d'objet
    Par Torkan dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 15/03/2007, 23h54
  5. Utiliser une variable pour stocker les noms d'objets.
    Par en_gel_ho dans le forum Access
    Réponses: 4
    Dernier message: 03/01/2007, 16h44

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