Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Taille de celulle

23 réponses
Avatar
Sunburn
Bonjour,
je voudrais savoir s'il est possible d'avoir une celulle ou une sélection de
celulles fusionnées, qui puissent avoir une taille qui s'adapte en fonction
du texte saisi.

En effet, j'ai besoin d'avoir des zones de saisie de commentaires, qui
soient facilement extensible pour ne pas obliger l'utilisateur landa à
insérer des lignes.
L'idéal serait une ligne de saisie (colonnes A à H par exemple), ligne 22,
mais dont la hauteur s'adapte en fonction du texte saisie (sur 12 si 1 ligne
par exemple, mais 20 ou 24 pour 2 lignes, etc...)

J'espère être explicite, ce n'est pas facile.

merci
YANN

10 réponses

1 2 3
Avatar
YeTi
Hello,

J'ai malheureusement un Excel en anglais mais je vais essayer de traduire:

Format cellule> Alignement> Ajuster texte (première case à cocher dans
contrôle texte)

J'espère que j'ai bien compris ce que tu voulais.

A+

"Sunburn" wrote:

Bonjour,
je voudrais savoir s'il est possible d'avoir une celulle ou une sélection de
celulles fusionnées, qui puissent avoir une taille qui s'adapte en fonction
du texte saisi.

En effet, j'ai besoin d'avoir des zones de saisie de commentaires, qui
soient facilement extensible pour ne pas obliger l'utilisateur landa à
insérer des lignes.
L'idéal serait une ligne de saisie (colonnes A à H par exemple), ligne 22,
mais dont la hauteur s'adapte en fonction du texte saisie (sur 12 si 1 ligne
par exemple, mais 20 ou 24 pour 2 lignes, etc...)

J'espère être explicite, ce n'est pas facile.

merci
YANN


Avatar
Sunburn
Salut,
non en fait "ajuster texte" ça réduit le texte à la taille de la celulle, et
moi je veux l'inverse.
Merci quand même.
Et "retour à la ligne" ne met pas la ligne à la hauteur 'lisible'.

YANN

"YeTi" a écrit :

Hello,

J'ai malheureusement un Excel en anglais mais je vais essayer de traduire:

Format cellule> Alignement> Ajuster texte (première case à cocher dans
contrôle texte)

J'espère que j'ai bien compris ce que tu voulais.

A+

"Sunburn" wrote:

> Bonjour,
> je voudrais savoir s'il est possible d'avoir une celulle ou une sélection de
> celulles fusionnées, qui puissent avoir une taille qui s'adapte en fonction
> du texte saisi.
>
> En effet, j'ai besoin d'avoir des zones de saisie de commentaires, qui
> soient facilement extensible pour ne pas obliger l'utilisateur landa à
> insérer des lignes.
> L'idéal serait une ligne de saisie (colonnes A à H par exemple), ligne 22,
> mais dont la hauteur s'adapte en fonction du texte saisie (sur 12 si 1 ligne
> par exemple, mais 20 ou 24 pour 2 lignes, etc...)
>
> J'espère être explicite, ce n'est pas facile.
>
> merci
> YANN


Avatar
Sunburn
Bonjour,
ça ne marche pas, sur mon excel en tout cas.
J'ai fais le test avec mes celulles fusionnées, et une celulle non fusionnée.
il faut que je double-clic sur la hauteur de ligne pour qu'elle se mette à
la bonne hauteur.
comment automatiser celà, en VBA ?
Merci
YANN

"Corto" a écrit :

Bonjour Sunburn,<br>
Tu coches la case "Renvoyer à la ligne automatiquement" dans
Format/Cellule et quand le texte dépasse Excel va automatiquement
augmenter la hauteur<br>



Sunburn a écrit :
<blockquote
cite="mid:"
type="cite">
<pre wrap="">Bonjour,
je voudrais savoir s'il est possible d'avoir une celulle ou une sélection de
celulles fusionnées, qui puissent avoir une taille qui s'adapte en fonction
du texte saisi.

En effet, j'ai besoin d'avoir des zones de saisie de commentaires, qui
soient facilement extensible pour ne pas obliger l'utilisateur landa à
insérer des lignes.
L'idéal serait une ligne de saisie (colonnes A à H par exemple), ligne 22,
mais dont la hauteur s'adapte en fonction du texte saisie (sur 12 si 1 ligne
par exemple, mais 20 ou 24 pour 2 lignes, etc...)

J'espère être explicite, ce n'est pas facile.

merci
YANN
</pre>
</blockquote>
</body>
</html>



Avatar
Sunburn
Re,
pour compléter, ça marche avec une celulle (j'avais oublié le "Format /
lignes / ajustement automatique"), mais ça marche pas avec une ligne de
celulles fusionnées.
je m'explique : je fusionne 1 ligne, de la colonne A à H, et je veux que ce
soit cette celulle fusionnée qui s'ajuste en hauteur.

Est ce possible, en VBA ou pas.
MERCI.

Yann
Avatar
Daniel.C
Mets le code suivant dans le module de ta feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range, Largeur As Double, Hauteur As Single
If Target.Address <> "$A$22" Or Target.Count > 1 Then Exit Sub
Application.EnableEvents = False
Largeur = 10.71 * 8
Hauteur = 15
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1, 1)
c.ColumnWidth = Largeur
c.WrapText = True
c.Value = Target.Value
Rows(22).RowHeight = c.Height
End With
Application.EnableEvents = True
End Sub

Ca fonctionne si tu ne mêles pas pusieurs polices dans la plage A22:H22.
--
Cordialement.
Daniel
"Sunburn" a écrit dans le message de
news:
Re,
pour compléter, ça marche avec une celulle (j'avais oublié le "Format /
lignes / ajustement automatique"), mais ça marche pas avec une ligne de
celulles fusionnées.
je m'explique : je fusionne 1 ligne, de la colonne A à H, et je veux que
ce
soit cette celulle fusionnée qui s'ajuste en hauteur.

Est ce possible, en VBA ou pas.
MERCI.

Yann


Avatar
Corto
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type" >
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Bonjour Sunburn,<br>
Ca ne marche pas avec les cellules fusionnées mais sur le cellules n on
fusionnées ça doit marcher tout seul.<br>
Vérifie que ta cellule n'est pas centrée sur plusieurs colonnes . Tu
peux aussi imposer des retours à la ligne avec Alt+Enter.<br>
Sinon l'équivalent du double-clic sur la hauteur de ligne en VBA est
[A1].EntireRow.AutoFit (pour la première ligne)<br>
<br>
Corto<br>
<br>
Sunburn a écrit :
<blockquote
cite="mid:"
type="cite">
<pre wrap="">Bonjour,
ça ne marche pas, sur mon excel en tout cas.
J'ai fais le test avec mes celulles fusionnées, et une celulle non f usionnée.
il faut que je double-clic sur la hauteur de ligne pour qu'elle se mette à
la bonne hauteur.
comment automatiser celà, en VBA ?
Merci
YANN

"Corto" a écrit :

</pre>
<blockquote type="cite">
<pre wrap="">Bonjour Sunburn,&lt;br&gt;
Tu coches la case "Renvoyer à la ligne automatiquement" dans
Format/Cellule et quand le texte dépasse Excel va automatiquement
augmenter la hauteur&lt;br&gt;
</pre>
</blockquote>
<pre wrap=""><!---->
</pre>
<blockquote type="cite">
<pre wrap="">Sunburn a écrit :
&lt;blockquote
cite=<a class="moz-txt-link-rfc2396E" href="mailto:mid:709FB512-D5 ">"mid:709FB512-D5EA-4C5D-AD91-D95 "</a>
type="cite"&gt;
&lt;pre wrap=""&gt;Bonjour,
je voudrais savoir s'il est possible d'avoir une celulle ou une séle ction de
celulles fusionnées, qui puissent avoir une taille qui s'adapte en f onction
du texte saisi.

En effet, j'ai besoin d'avoir des zones de saisie de commentaires, qui
soient facilement extensible pour ne pas obliger l'utilisateur landa à
insérer des lignes.
L'idéal serait une ligne de saisie (colonnes A à H par exemple) , ligne 22,
mais dont la hauteur s'adapte en fonction du texte saisie (sur 12 si 1 li gne
par exemple, mais 20 ou 24 pour 2 lignes, etc...)

J'espère être explicite, ce n'est pas facile.

merci
YANN
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;/body&gt;
&lt;/html&gt;

</pre>
</blockquote>
</blockquote>
</body>
</html>
Avatar
Sunburn
Merci Daniel,
mais euh, question bête : comment on fait pour exécuter cette macro ? c'est
à l'ouverture du classeur que ça fonctionne ?
Merci

"Daniel.C" a écrit :

Mets le code suivant dans le module de ta feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range, Largeur As Double, Hauteur As Single
If Target.Address <> "$A$22" Or Target.Count > 1 Then Exit Sub
Application.EnableEvents = False
Largeur = 10.71 * 8
Hauteur = 15
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1, 1)
c.ColumnWidth = Largeur
c.WrapText = True
c.Value = Target.Value
Rows(22).RowHeight = c.Height
End With
Application.EnableEvents = True
End Sub

Ca fonctionne si tu ne mêles pas pusieurs polices dans la plage A22:H22.
--
Cordialement.
Daniel
"Sunburn" a écrit dans le message de
news:
> Re,
> pour compléter, ça marche avec une celulle (j'avais oublié le "Format /
> lignes / ajustement automatique"), mais ça marche pas avec une ligne de
> celulles fusionnées.
> je m'explique : je fusionne 1 ligne, de la colonne A à H, et je veux que
> ce
> soit cette celulle fusionnée qui s'ajuste en hauteur.
>
> Est ce possible, en VBA ou pas.
> MERCI.
>
> Yann





Avatar
Sunburn
Impecable, ça focntionne.
Désolé pour la question d'avant, il suffit de saisir un truc dans la
celulle, nickel crome !!!!

Et, on peut lui demander vite pour que ça fonctionne pour une page entière,
voir le classeur entier, seulement pour les celulles qui sont en "renvoyer à
la ligne automatiquement", ça, ça serait la cerise sur le gateau.

MERCI..

....
Par contre, le 16/09, j'avais mis un post pour un problème d'impression. Ta
réponse et celle d'un autre du forum m'aide, mais ne fonctionne pas, car le
fait que NA soit saisi ou pas dans la celule A4,il imprime la feuille quand
même.
Donc si tu as une autre idée pour moi, merci d'avance.
YANN



"Daniel.C" a écrit :

Mets le code suivant dans le module de ta feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range, Largeur As Double, Hauteur As Single
If Target.Address <> "$A$22" Or Target.Count > 1 Then Exit Sub
Application.EnableEvents = False
Largeur = 10.71 * 8
Hauteur = 15
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1, 1)
c.ColumnWidth = Largeur
c.WrapText = True
c.Value = Target.Value
Rows(22).RowHeight = c.Height
End With
Application.EnableEvents = True
End Sub

Ca fonctionne si tu ne mêles pas pusieurs polices dans la plage A22:H22.
--
Cordialement.
Daniel
"Sunburn" a écrit dans le message de
news:
> Re,
> pour compléter, ça marche avec une celulle (j'avais oublié le "Format /
> lignes / ajustement automatique"), mais ça marche pas avec une ligne de
> celulles fusionnées.
> je m'explique : je fusionne 1 ligne, de la colonne A à H, et je veux que
> ce
> soit cette celulle fusionnée qui s'ajuste en hauteur.
>
> Est ce possible, en VBA ou pas.
> MERCI.
>
> Yann





Avatar
Daniel.C
Dans "thisworkbook", mets :

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim c As Range, Largeur As Double, Hauteur As Single
If Target.WrapText = False Or Target.Count > 1 Then Exit Sub
For i = 1 To Target.MergeArea.Columns.Count
Largeur = Largeur + Target.ColumnWidth
Next i
Application.EnableEvents = False
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1, 1)
c.ColumnWidth = Largeur
c.WrapText = True
c.Value = Target.Value
Target.EntireRow.RowHeight = c.Height
c.Clear
End With
Application.EnableEvents = True
End Sub

Cordialement.
Daniel
"Sunburn" a écrit dans le message de
news:
Impecable, ça focntionne.
Désolé pour la question d'avant, il suffit de saisir un truc dans la
celulle, nickel crome !!!!

Et, on peut lui demander vite pour que ça fonctionne pour une page
entière,
voir le classeur entier, seulement pour les celulles qui sont en "renvoyer
à
la ligne automatiquement", ça, ça serait la cerise sur le gateau.

MERCI..

....
Par contre, le 16/09, j'avais mis un post pour un problème d'impression.
Ta
réponse et celle d'un autre du forum m'aide, mais ne fonctionne pas, car
le
fait que NA soit saisi ou pas dans la celule A4,il imprime la feuille
quand
même.
Donc si tu as une autre idée pour moi, merci d'avance.
YANN



"Daniel.C" a écrit :

Mets le code suivant dans le module de ta feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range, Largeur As Double, Hauteur As Single
If Target.Address <> "$A$22" Or Target.Count > 1 Then Exit Sub
Application.EnableEvents = False
Largeur = 10.71 * 8
Hauteur = 15
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1,
1)
c.ColumnWidth = Largeur
c.WrapText = True
c.Value = Target.Value
Rows(22).RowHeight = c.Height
End With
Application.EnableEvents = True
End Sub

Ca fonctionne si tu ne mêles pas pusieurs polices dans la plage A22:H22.
--
Cordialement.
Daniel
"Sunburn" a écrit dans le message de
news:
> Re,
> pour compléter, ça marche avec une celulle (j'avais oublié le "Format /
> lignes / ajustement automatique"), mais ça marche pas avec une ligne de
> celulles fusionnées.
> je m'explique : je fusionne 1 ligne, de la colonne A à H, et je veux
> que
> ce
> soit cette celulle fusionnée qui s'ajuste en hauteur.
>
> Est ce possible, en VBA ou pas.
> MERCI.
>
> Yann







Avatar
Sunburn
Je te remercie Daniel, c'est d'enfer, ça marche top bien.....
Merci encore.
YANN

"Daniel.C" a écrit :

Dans "thisworkbook", mets :

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim c As Range, Largeur As Double, Hauteur As Single
If Target.WrapText = False Or Target.Count > 1 Then Exit Sub
For i = 1 To Target.MergeArea.Columns.Count
Largeur = Largeur + Target.ColumnWidth
Next i
Application.EnableEvents = False
With ActiveSheet.UsedRange
Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1, 1)
c.ColumnWidth = Largeur
c.WrapText = True
c.Value = Target.Value
Target.EntireRow.RowHeight = c.Height
c.Clear
End With
Application.EnableEvents = True
End Sub

Cordialement.
Daniel
"Sunburn" a écrit dans le message de
news:
> Impecable, ça focntionne.
> Désolé pour la question d'avant, il suffit de saisir un truc dans la
> celulle, nickel crome !!!!
>
> Et, on peut lui demander vite pour que ça fonctionne pour une page
> entière,
> voir le classeur entier, seulement pour les celulles qui sont en "renvoyer
> à
> la ligne automatiquement", ça, ça serait la cerise sur le gateau.
>
> MERCI..
>
> ....
> Par contre, le 16/09, j'avais mis un post pour un problème d'impression.
> Ta
> réponse et celle d'un autre du forum m'aide, mais ne fonctionne pas, car
> le
> fait que NA soit saisi ou pas dans la celule A4,il imprime la feuille
> quand
> même.
> Donc si tu as une autre idée pour moi, merci d'avance.
> YANN
>
>
>
> "Daniel.C" a écrit :
>
>> Mets le code suivant dans le module de ta feuille :
>>
>> Private Sub Worksheet_Change(ByVal Target As Range)
>> Dim c As Range, Largeur As Double, Hauteur As Single
>> If Target.Address <> "$A$22" Or Target.Count > 1 Then Exit Sub
>> Application.EnableEvents = False
>> Largeur = 10.71 * 8
>> Hauteur = 15
>> With ActiveSheet.UsedRange
>> Set c = Range(.Cells(.Rows.Count, .Columns.Count).Address).Offset(1,
>> 1)
>> c.ColumnWidth = Largeur
>> c.WrapText = True
>> c.Value = Target.Value
>> Rows(22).RowHeight = c.Height
>> End With
>> Application.EnableEvents = True
>> End Sub
>>
>> Ca fonctionne si tu ne mêles pas pusieurs polices dans la plage A22:H22.
>> --
>> Cordialement.
>> Daniel
>> "Sunburn" a écrit dans le message de
>> news:
>> > Re,
>> > pour compléter, ça marche avec une celulle (j'avais oublié le "Format /
>> > lignes / ajustement automatique"), mais ça marche pas avec une ligne de
>> > celulles fusionnées.
>> > je m'explique : je fusionne 1 ligne, de la colonne A à H, et je veux
>> > que
>> > ce
>> > soit cette celulle fusionnée qui s'ajuste en hauteur.
>> >
>> > Est ce possible, en VBA ou pas.
>> > MERCI.
>> >
>> > Yann
>>
>>
>>





1 2 3