ajustement des textes dans des cellules fusionnées

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 !

chaelie2015

XLDnaute Accro
Bonjour forum

Quelqu’un peut m’expliquer comment faire pour ajuster les textes dans des cellules fusionnées

Dans mon exemple ne s’afficher pas complet et quand je mets « aperçu avant l’impression » il s’affiche bien ??????
merci
 

Pièces jointes

Re,
Les cellules sont fusionnées de la colonne A à X avec un alignement à droite. Voilà ce que j'ai en aperçu.
J'ai supprimé le mot "par" en doublon sur la deuxième ligne.
Dis mois ce qui ne te va pas par rapport à cette capture.
@+
upload_2017-3-19_11-39-39.png
 
Bonjour, chaelie2015, eddy1975, le Forum,

En attendant mieux et selon le nombre de caractères...
Code:
Option Explicit
Sub Ajuster()
    Dim c As Range
    For Each c In Columns(2).SpecialCells(xlCellTypeConstants)
        If Len(c) > 85 Then
            With c
                .RowHeight = 37
                .HorizontalAlignment = xlLeft
                .VerticalAlignment = xlTop
                .WrapText = True
            End With
        End If
    Next
End Sub
A bientôt 🙂
 
Bonjour

Excel n'est pas 100% WysiWyg : que les cellules soient ou non fusionnées, on a le problème, lié de plus au coeff de zoom.

Cependant quand les cellules ne sont pas fusionnées, elles débordent à l'affichage sur celle de droite (et/ou gauche selon l'alignement) si celles-ci sont vides.

A 90% de zoom cela s'affiche bien chez moi

Edit : bouh, je tape à côté du clavier...
 
Dernière édition:
Bonjour à tous

En ouvrant le fichier posté en #1, sans toucher à rien à part le zoom
Comme déjà dit cela, dépend de plein de paramètres d'affichages et peut-être aussi de l'imprimante (pilote), Excel n'étant pas Wysiwyg.
Il faut trouver le meilleur compromis : soit élargir les colonnes, soit jouer sur le zoom. Un des compromis permet un affichage proche de l'impression...
upload_2017-3-19_14-20-9.png
 
Bonjour chaelie2015, eddy1975, DoubleZero, chris, Lone-wolf,

Dans cette solution VBA l'astuce consiste à utiliser une TextBox auxiliaire (masquée) :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Column <> 2 Then Exit Sub 'colonne B
Application.ScreenUpdating = False
Application.DisplayAlerts = False
With TextBox1
  .Visible = False
  .AutoSize = False
  .Font.Name = ActiveCell.Font.Name
  .Font.Size = ActiveCell.Font.Size
  .Width = 5000
  .Value = ActiveCell
  .AutoSize = True
End With
ActiveCell.UnMerge
While ActiveCell.MergeArea.Width < TextBox1.Width
  Range(ActiveCell, ActiveCell.Offset(, 1)).Merge
Wend
ActiveCell.MergeArea.Select
End Sub
Fichier joint.

A+
 

Pièces jointes

Re,

Dans une TextBox il y a des marges.

On peut peaufiner en en tenant compte :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Column <> 2 Then Exit Sub 'colonne B
Dim marge#
Application.ScreenUpdating = False
Application.DisplayAlerts = False
With TextBox1
  .Visible = False
  .AutoSize = False
  .Font.Name = ActiveCell.Font.Name
  .Font.Size = ActiveCell.Font.Size
  TextBox1 = ""
  .AutoSize = True
  marge = TextBox1.Width - 1 'on conserve une petite marge de 1 point
  .AutoSize = False
  .Width = 5000
  .Value = ActiveCell
  .AutoSize = True
End With
ActiveCell.UnMerge
While ActiveCell.MergeArea.Width < TextBox1.Width - marge
  Range(ActiveCell, ActiveCell.Offset(, 1)).Merge
Wend
ActiveCell.MergeArea.Select
End Sub
Fichier (2).

A+
 

Pièces jointes

- 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
3
Affichages
298
Retour