Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro ajouter texte dans une cellule

  • Initiateur de la discussion Initiateur de la discussion Vince17
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

V

Vince17

Guest
Bonjour à tous,

Ma question est un peu plus complexe que l'intitulé ne semble paraitre.
En fait, je souhaite ajouter un texte type Date avant un texte existant dans une cellule sans le supprimer.

Ça sera peut être plus compréhensible avec un exemple :
Ma cellule A1 contient un texte ("Texte1") et je veux, en cliquant sur un bouton, activer une macro qui introduirait un texte avec la date d'aujourd'hui et un saut de ligne soit :
Texte2 Aujourdhui
Texte1

Merci d'avance pour votre aide.
N'hésitez pas à poser des questions si tout n'est pas clair.
 
Re : Macro ajouter texte dans une cellule

Mon Texte2 serait toujours identique.
Par exemple, du type :"Fait le ..."

Et donc chaque fois qu'on clique sur le bouton on ajoute dans la cellule : "Fait le + date"
 
Re : Macro ajouter texte dans une cellule

Salut,

Une solution parmi d'autres avec le Double Click ...
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
    Cancel As Boolean)
Dim Text As String
    With Target
        If .Cells.Count > 1 Then Exit Sub
        Text = .Value
        .Value = Text & "  " & Date
        Cancel = True  
    End With
End Sub

A +
 
Re : Macro ajouter texte dans une cellule

Tout d'abord, merci pour votre aide rapide.

J'ai bien utilisé votre code mais j'ai souhaité ajouter une restriction sur le Range.

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

If Not Application.Intersect(Target, Range([A3].End(xlDown)) Is Nothing Then GoTo Action1
If Not Application.Intersect(Target, Range([C5].End(xlDown)) Is Nothing Then GoTo Action2

Action1:
Dim Text As String
    With Target
        If .Cells.Count > 1 Then Exit Sub
        Text = .Value
        .Value = Text & Chr(10) & Date
        Cancel = True
    End With

Action2:
Dim Text As String
    With Target
        If .Cells.Count > 1 Then Exit Sub
        Text = .Value
        .Value = Text & Chr(10) & "OK" & Date
        Cancel = True
    End With

End Sub

Et là j'ai un message d'erreur avec une erreur de compilation au niveau de If Not...
Est ce que vous voyez comment améliorer mon code?

Merci encore.
 
Re : Macro ajouter texte dans une cellule

re,

Avec le code suivant ca fonctionne :
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Count = 1 Then
    If Not Intersect(Target, Range("A3:A" & Range("A3").End(xlDown).Row, "C5:C" & Range("C5").End(xlDown).Row)) Is Nothing Then
        With Target
            .Value = .Value & Chr(10) & Date
            Cancel = True
        End With
    End If
End If
End Sub

Quelques explications:
- déclare tes variables en haut de ton programme, tu ne dois pas déclarer plusieurs fois la meme variable
- dans ton code, il manquait une parenthèse sur les 2 lignes If Not ...
- eviter au maximum les goto, qui font des appels dans tous les sens (mais si tu n'as pas le chois, pense a mettre un exit sub a la fin, sinon, le code se trouvant en dessous est executé)
- j'ai regroupé tes 2 plages car il possible dans un range de mettre des plages non adjacentes (par exemple range("A3:A5", "B2:E7"))

@+
 
Re : Macro ajouter texte dans une cellule


C'est pas mal tout çà et çà correspond a peu près a ce que je cherche, mais je préfèrerait avoir un bouton qui ferait la même chose sur une colonne entière car j'ai plus de 3000 lignes ! (3059 en fait)

Alors vous imaginez bien que je ne vais pas double cliquer 3059 fois !

Donc, un truc qui ajouterait du texte a toutes les cellules de la colonne jusqu’à ce que la cellule soit vide.
Chez moi cette macro s'arrêterait a la ligne 3060.

Désolé mais bien que j'en ai fait dans le passé, je n'ai pas aimé en faire et j'ai préféré éviter la programation tout court et même les macro de ce genre. Bizarrement, je comprend mieux les scripts shell !?
 
Re : Macro ajouter texte dans une cellule

Bonjour à toutes et à tous,

Bienvenue sur XLD, AtomicBoy44.

Un fichier exemple agrémenté d'un petit "Bonjour" 🙄 susciteront certainement une (des) réponse(s).

Si ce n'est déjà fait, consulter Lien supprimé

A bientôt.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
586
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…