Ajustement ligne cellules fusionnées

Bonjour,

Je sais le problème est tellement ancien mais il fait toujours débat.

Je sais qu'il n'est pas possible d'ajuster la hauteur de ligne avec des cellules fusionnées. Par contre je souhaiterai mettre un code VBA pour faire cette manip. Est ce faisable ?

dans ma feuille intitulé "Plan audit" ligne 28 cellules fusionnées de la colonne A à H.

Merci.

Salut Thomasdu40

Et ton fichier

A+

Voici le fichier.

Merci.

Re,

Je sais qu'il n'est pas possible d'ajuster la hauteur de ligne avec des cellules fusionnées

Oui si tu as plusieurs lignes fusionnées ensemble, ce qui n'est apparemment ton cas

Donc je ne vois pas ou est ton problème

A+

Dans le fichier joint à ce post, j'aimerai qu'au niveau de la ligne 28 (cellules fusionnées de A28 à H28) que la ligne s'adapte au niveau de sa hauteur en fonction du texte saisi.

Re,

Ok d'acc., par contre il y'a un Mdp dans ton VBAPRoject

A+

Désolé.

Mdp : entreprise (minuscule).

Re,

Voici peut-être une solution à ton cas

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim LigH As Integer, NbCar As Long, NewH As Integer
  ' Si la modificatino apportée, n'est pas dans la cellule A28 => on sort
  If Target.Address <> "$A$28" Then Exit Sub
  ' Après test
  ' hauteur de ligne = 26 -> contient 158 caractères larges
  ' mais en ajoutant des caractères ce nombre diminue à 140
  With Sheets("Plan audit")
    ' Récupère la hauteur de ligne
    LigH = Rows(28).RowHeight
    ' Compte le nombre de caractères
    NbCar = Len(.Range("A28"))
    ' Fait le calcul de la nouvelle hauteur
    NewH = NbCar * (26 / 140) ' Un ajustement peut se faire ici (26/xxx)
    ' Appliquer la hauteur à la ligne
    Rows(28).RowHeight = Application.Max(26, NewH)
  End With
End Sub

A mettre dans le VBAProject de ta feuille "Plan audit"

A+

Merci à toi cela répond à mes attentes.

M'est il possible de farie la même chose avec la ligne 24 de la même feuille ?

Bonjour,

Problème résolu.

Voici le code en entier :

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim LigH As Integer, NbCar As Long, NewH As Integer

 With Sheets("Plan audit")
   If Target.Address = "$A$28" Then
   LigH = Rows(28).RowHeight
   NbCar = Len(.Range("A28"))
   NewH = NbCar * (26 / 140)
   Rows(28).RowHeight = Application.Max(26, NewH)
   End If

   If Target.Address = "$A$24" Then
   LigH = Rows(24).RowHeight
   NbCar = Len(.Range("A24"))
   NewH = NbCar * (26 / 140)
   Rows(24).RowHeight = Application.Max(26, NewH)
   End If
 End With
End Sub

Bonsoir,

Est-ce possible de faire la même chose dans le groupe de cellules actives ?

Merci A+

Philippe

Bonjour,

Lorsque des cellules sont fusionnées par exemple : ligne 15 de E à O, la fonction ajuster la hauteur de cellule automatiquement au texte, ne fonctionne plus, apparemment un beug ou un oubli des développeurs EXCEL, bref.

Pour contourner ce problème :

Ne pourrait-on pas, compter le nombre de ligne dans la cellule active de la colonne E (fusionnée avec les autres), et ensuite insérer le même nombre de retour à la ligne dans la cellule de la colonne A de la même ligne ?

Quelqu’un aurait-il une idée de comment faire ?

Merci et bon weekend

Philippe

Rechercher des sujets similaires à "ajustement ligne fusionnees"