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 :

Copier coller du texte dans une cellule non-vide [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juin 2021
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2021
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Copier coller du texte dans une cellule non-vide
    Bonjour,

    Je viens de créer un fichier qui, une fois complété par une personne, va intéresser une ou plusieurs autres personnes.
    Il convient donc de les informer de la création ou de la mise à jour de ce fichier partagé sur le réseau.

    Je souhaite donc faciliter l'envoi (presque) automatique d'un mail pré-rempli aux utilisateurs sélectionnés (nous utilisons Zimbra).

    Pour cela, j'ai utilisé la fonction suivante :

    Code formule : Sélectionner tout - Visualiser dans une fenêtre à part
    =LIEN_HYPERTEXTE("mailto:"&D11&"?cc="&D12&"&subject="&D13&"&body="&D14;"envoyer le mail")


    Mon soucis, c'est D11 et D12 sont "fixes" et que j'aimerai pouvoir, à partir d'une liste ajouter d'autres adresses si nécessaire.
    A mon niveau, facile s'il n'y a qu'une personne, mais comment créer une macro qui ajouterait à la cellule D11 l'adresse mail 001@xxx.com si D11 n'est pas vide et contient déjà une autre adresse mail ?
    Si D11 n'est pas vide, il faudrait conserver l'adresse déjà présente, en séparant par ";"

    Les adresses sont dispo dans un tableau H9:I46 qui comprend nom prénom en colonne H puis l'adresse correspondante en colonne I.

    Je ne sais pas si ma demande est très claire...

    Merci aux bonnes volontés qui pourront me proposer des pistes !

    JiBé

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 935
    Points : 5 157
    Points
    5 157
    Par défaut
    bonjour
    je sais pas si j'ai compris la demande
    mais voila un code si tu te mets sur l'adresse souhaité et tu fais clic droite souris, l'adresse s'ajoute en D11
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Count > 1 Then Exit Sub
        If Not Application.Intersect(Target, Range("I9:I46")) Is Nothing Then
        If Range("D11") = "" Then
          Range("D11") = ActiveCell.Value
          Else
           Range("D11") = Range("D11") & ";" & ActiveCell.Value
        End If
        End If
    End Sub

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juin 2021
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2021
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Bonjour BENNASR,

    Merci beaucoup, vous avez tout à fait compris ma demande !!
    l'effet est bien celui attendu.

    Serait-il possible d'appliquer cette fonction, non pas sur un clic droit, mais en cliquant sur un bouton ?
    et dans l'affirmative comment modifier votre proposition initiale ?

    cordialement,

  4. #4
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 935
    Points : 5 157
    Points
    5 157
    Par défaut
    à tester

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test()
    Dim F1 As Worksheet
    Set F1 = Sheets("Feuil1")
    If Not Application.Intersect(ActiveCell, F1.Range("I9:I46")) Is Nothing Then
    If MsgBox("Etes-vous certain de vouloir ajouter cette adresse ???    " & ActiveCell.Value, vbYesNo, "Demande de confirmation") = vbYes Then
        If F1.Range("D11") = "" Then
          F1.Range("D11") = ActiveCell.Value
          Else
           F1.Range("D11") = Range("D11") & ";" & ActiveCell.Value
        End If
       End If
    End If
    End Sub

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juin 2021
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2021
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Merci de cette nouvelle proposition, mais je ne parviens à la faire fonctionner !

    j'ai modifié ainsi (en rouge ci dessous) et coller dans un module, affecté la macro à mon bouton, mais il ne se passe rien...
    Que dois-je faire d'autre ?

    merci de voter patience !!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test()
    Dim F1 As Worksheet
    Set F1 = Sheets("Envoi mail")
    If Not Application.Intersect(ActiveCell, F1.Range("I9:I46")) Is Nothing Then
    If MsgBox("Etes-vous certain de vouloir ajouter cette adresse ?    " & ActiveCell.Value, vbYesNo, "Demande de confirmation") = vbYes Then
        If F1.Range("D11") = "" Then
          F1.Range("D11") = ActiveCell.Value
          Else
           F1.Range("D11") = Range("D11") & ";" & ActiveCell.Value
        End If
       End If
    End If
    End Sub

  6. #6
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 935
    Points : 5 157
    Points
    5 157
    Par défaut
    il faut que tu te positionne sur l'adresse à copier que se trouve dans la plage I9 : I46

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Juin 2021
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2021
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    En effet, ça fonctionne parfaitement !

    c'est donc résolu, merci beaucoup pour le temps consacré à ma demande !

    bonne journée

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

Discussions similaires

  1. [XL-2016] Copier/coller en boucle toutes les cellules non vides d'un tableau
    Par Rania1990 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 03/08/2018, 13h37
  2. Réponses: 17
    Dernier message: 01/06/2018, 18h52
  3. [XL-2016] Valeur "Texte" dans une cellule non reconnue comme "Texte"
    Par Baraas dans le forum Excel
    Réponses: 2
    Dernier message: 10/11/2016, 13h47
  4. [XL-2010] Ajout de texte dans une cellulle non vide
    Par mikmak78 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/09/2014, 15h18
  5. [XL-2007] Concaténer du texte a une cellule non vide
    Par amirale dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 29/08/2011, 17h06

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