[résolu] macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

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 !

jozerebel

XLDnaute Occasionnel
Bonjour,

tout est dans le titre…

J'ai des cellules avec bcp de texte dedans. Afin de permettre une lecture plus facile sans avoir à remanier les tailles de colonnes et lignes, je souhaiterais une macro qui puisse ouvrir un pop up avec tout le texte de la cellule sélectionnée.

Et si possible, rendre le texte dynamique, c'est à dire pouvoir le modifier directement depuis le pop up...

Une idée?

d'avance merci!
 
Dernière édition:
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Bonjour,

Pour la première partie voila le code à adapter selon la plage voulue

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("B2:G22")) Is Nothing Then ' à adapter la plage B2:G22
    Application.ScreenUpdating = False
    ActiveSheet.Shapes("ZoneTexte 1").Select
    Selection.Characters.Text = Target.Value
    Range("XFD1") = Target.Address
    col = Target.Column
    lig = Target.Row
End If
Cancel = True
Application.ScreenUpdating = True
End Sub
 
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Une proposition à développer :
Code:
Option Explicit
Dim EnableEvent As Boolean, Cel As Range
Private Sub TextBox1_Change()
If EnableEvent = True Then EnableEvent = False: Exit Sub
Cel = TextBox1.Text
End Sub

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Text = vbNullString Then Exit Sub
Cancel = True
TextBox1.Visible = True
EnableEvent = True: TextBox1.Text = Target.Text: TextBox1.Font.Size = 20
Set Cel = Target
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
TextBox1.Visible = False
End Sub
A+
 

Pièces jointes

Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Salut et à tous et merci pour vos réponses.

David84, j'ai un message d'erreur au doucle click sur une cellule : Variable non définie sur le textbox1.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
TextBox1.Visible = False
End Sub

Une idée?
 
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Bonsoir,

Voir pj

Visualise la cellule survolée dans un formulaire. On peut également modifier le contenu de la cellule dans le formulaire.

Pour modifier dans la cellule:
-cliquer sur la cellule (qui devient verte)
-modifier
-valider avec Entrée

Pour modifier dans le formulaire:
-Cliquer dans la cellule (qui devient verte)
-Cliquer dans le formulaire.
-Modifier
-Cliquer sur ok

http://boisgontierjacques.free.fr/fichiers/Evenementiel/SurvolChamp2.xls

jb
 

Pièces jointes

Dernière édition:
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Re
bonsoir Jacques,
David84, j'ai un message d'erreur au doucle click sur une cellule : Variable non définie sur le textbox1.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
TextBox1.Visible = False
End Sub

Une idée?
Je n'arrive pas à reproduire cette erreur. Peux-tu préciser dans quelle situation cela arrive ?
Par contre j'ai remarqué un problème de redimensionnement de la zone de texte quand on passe d'un texte court à un texte plus long.
On peut y remédier en plaçant dans le BeforeDoubleClick
Code:
TextBox1.Width = 500
après
Code:
TextBox1.Visible = True
A+
 
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Bonjour David84,

En fait, quelle que soit la valeur de ma cellule, texte court ou long, la macro plante :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Peut-être dois-je activer un complément sous VBA?
 
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Bonjour David84,

En fait, quelle que soit la valeur de ma cellule, texte court ou long, la macro plante :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Peut-être dois-je activer un complément sous VBA?

Je n'ai pas cette erreur sur mon ordinateur.
Sous quelle version d'Excel es-tu ? C'est bien 2010 ?
Tu as cette erreur sur le fichier que je t'ai placé au post #4 ?
A+
 
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Version 2010. je n'ai pas l'erreur sur ton fichier.

mais quand je copie les macros sous mon fichier, badaboom...

J'essaie d'enlever les infos confidentielles et de joindre le fichier.

Par contre, je ne pourrais le faire que demain matin.

Merci.
 
Re : macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Bonjour à tous,

Bon, je comprends pas, quand je copie colle le code dans mon classeur, ça marche pas et quand je copie colle mes données dans le classeur de David 84, ça marche...

Je pense donc que c'est mon premier classeur qui plante (protection de cellules? liste déroulante?)...

Bref, je note le sujet résolu car je ne pense pas que la macro de David soit en cause...

Merci à tous!
 
Re : [résolu] macro pour afficher le contenu d'une cellule dans une nouvelle fenêtre

Bonjour,
Bon, je comprends pas, quand je copie colle le code dans mon classeur, ça marche pas et quand je copie colle mes données dans le classeur de David 84, ça marche...
Es-tu bien sûr d'avoir inséré un TextBox sur ta feuille de calcul (Onglet Développeur>Insérer>Contrôle ActiveX>Zone de texte) et d'avoir inséré le code dans le module de la feuille concernée ?
A+
 
- 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

Discussions similaires

Retour