XL 2013 Afficher texte avec mise en forme dans un label

  • Initiateur de la discussion Initiateur de la discussion yannick64
  • 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 !

yannick64

XLDnaute Junior
Bonjour à tous,

Je dois afficher du texte d'une cellule dans un userform pour faire une sorte d'aide. Je pensais le faire avec un label.
Mon souci c'est que le texte qui s'affiche perd toute mise en page (couleur et gras ou italique).
J'utilise ce type de code :
Code:
Private Sub Label1_Click()
Label1.Caption = Feuil1.[A1&char(13)&A2&char(13)&A3]
End Sub

Est ce qu'il est possible d'afficher du texte dans un userform avec un label ou autre chose en gardant la mise en page?

Merci pour votre aide
Yannick
 
Re : Afficher texte avec mise en forme dans un label

Bonjour yannick64,

Le texte que vous mettez dans le Label est celui de 3 cellules.

Les mises en forme dans un Label (ou un autre contrôle) s'appliquent à tout le texte.

Voyez les propriétés ForeColor et Font.

A+
 
Dernière édition:
Re : Afficher texte avec mise en forme dans un label

Re,

Evidemment on peut toujours faire compliqué n'est-ce pas 🙄

Alors créez un fichier JPEG à partir d'une photo (CopyPicture) des cellules.

Et vous chargerez ce fichier JPEG dans un contrôle Image de l'UserForm.

Il y a pas mal d'exemples sur le forum (j'en ai fait).

A+
 
Re : Afficher texte avec mise en forme dans un label

Bonjour Yannick, le forum,

Voyez ci-joint ce que l'on peut faire avec cette macro :

Code:
Private Sub Image1_Click()
Dim P As Range, dh, fichier$
'---plage à copier---
Set P = Feuil1.[A1:A3].Offset(3 * Val(Image1.Tag))
Image1.Tag = 1 - Val(Image1.Tag)
'---dimensions---
Image1.Width = P.Width: Me.Width = P.Width
dh = P.Height - Image1.Height
Image1.Height = P.Height: Me.Height = Me.Height + dh
'---fichier JPEG---
fichier = ThisWorkbook.Path & "\MonImage.jpg"
P.CopyPicture
With Feuil1.ChartObjects.Add(0, 0, P.Width, P.Height).Chart
  .Paste
  .Export fichier, "JPG"
  .Parent.Delete
End With
Image1.Picture = LoadPicture(fichier)
Me.Repaint 'MAJ
Kill fichier
End Sub
Edit : mots clés pour recherche ultérieure creer image

Bonne journée.
 

Pièces jointes

Dernière édition:
Re : Afficher texte avec mise en forme dans un label

Re,

En ajoutant un Frame :

Code:
Private Sub Image1_Click()
Dim P As Range, dh, fichier$
'---plage à copier---
Set P = Feuil1.[A1:A6]
'---dimensions---
dh = P.Height / 2 - Frame1.Height
Frame1.Width = P.Width + 12: Frame1.Height = P.Height / 2
Frame1.ScrollHeight = P.Height
Image1.Width = P.Width: Me.Width = Frame1.Width
Image1.Height = P.Height: Me.Height = Me.Height + dh
'---fichier JPEG---
fichier = ThisWorkbook.Path & "\MonImage.jpg"
P.CopyPicture
With Feuil1.ChartObjects.Add(0, 0, P.Width, P.Height).Chart
  .Paste
  .Export fichier, "JPG"
  .Parent.Delete
End With
Image1.Picture = LoadPicture(fichier)
Me.Repaint 'MAJ
Kill fichier
End Sub
Fichier (2).

A+
 

Pièces jointes

Dernière édition:
- 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

Réponses
12
Affichages
501
Réponses
7
Affichages
870
Retour