Macro pour définir la hauteur de ligne et la largeur de colonne, Excel VBA

Avec le paramètre pour la largeur de colonne correcte ou la hauteur de ligne correcte, vous pouvez déterminer si le paramètre doit s’appliquer à votre feuille de calcul entière ou uniquement à certaines colonnes et lignes. Dans le premier exemple, les colonnes A à E et les lignes 1 à 4 sont ajustées sur la feuille de calcul Feuil1. Dans le premier cas, utilisez les propriétés CompleteColumn et ColumnWidth pour définir la largeur de la colonne. Dans le second cas, appliquez les propriétés EntierRow et RowHeight à l’objet Range pour définir la hauteur de ligne.

Sub DefinirLesLignesDeColonne()

  Sheets ("Feuil1"). Activate

  Range ("A: E"). EntireColumn.ColumnWidth = 15

  Range ("1: 4"). EntireRow.RowHeight = 20

End Sub

 

Dans l’extrait, une partie seulement du tableau T

TABLEAU 1 ajusté. Mais comment cela fonctionne-t-il pour toute la table?

Sub TableaudesLignesEnsembleColonnes ()

Sheets ("Feuil1"). Acti vate Cells.Select With Selection .EntireColumn.ColumnWidth = 15 .EntireRow.RowHeight = 20

 End With

 End Sub

 

La propriété Cel ls représente toutes les cellules d’un tableau. En combinaison avec la méthode Select, toutes les cellules de la feuille de calcul sont sélectionnées. Pour économiser de la paperasse, utilisez l’instruction With et utilisez la propriété Selection pour spécifier une taille de colonne ou une hauteur de ligne uniforme pour votre feuille de calcul.

L’unité de largeur de colonne ou de hauteur de ligne correspond à la largeur d’un caractère dans le style STANDARD. La largeur du caractère 0 (zéro) est utilisée pour les polices proportionnelles.

Vous venez d’apprendre à donner aux lignes ou aux colonnes une taille fixe dans Excel. Vous avez également la possibilité, par exemple, de donner à vos colonnes exactement la largeur requise. Pour ce faire, utilisez la méthode AutoFit, qui définit automatiquement les colonnes spécifiées sur la largeur correcte. Vous connaissez probablement la réaction d’Excel lorsqu’une colonne est trop petite et que la valeur numérique saisie ne peut plus être affichée: Excel apparaît alors pour remplir la cellule avec le caractère #. Ce n’est que lorsque vous double-cliquez sur la colonne pour ajuster la limite de l’en-tête de colonne correspondant que la colonne est agrandie afin que le contenu complet de la cellule puisse être affiché.

Set ColonnesLarge ()

Worksheets ("Feuil1"). Columns ("A: G"). AutoFit

End Sub

 

Si vous ne savez pas à l’avance quelles cellules sont trop petites et que vous souhaitez résoudre dynamiquement la dernière tâche, utilisez la macro .

Sub ReglageDeLaColonne () ()

Dim cell as range

   For Each Cell In ActiveSheet.UsedRange

   If IsNumeric (Cell.Value) _

     And Left (Cell.Text, 1) = "#" Then

    Worksheets ("Sheet1"). Columns (Cell.Column) .AutoFit

   End if

   Next cell

End Sub

 

Dans une boucle For Each, vous recherchez la zone utilisée dans la feuille de calcul Feuil1 pour les cellules dans lesquelles les valeurs numériques ne peuvent pas être affichées de manière lisible. Par conséquent, vérifiez d’abord le contenu numérique et vérifiez le premier caractère affiché dans la cellule en même temps. La fonction IsNumeric renvoie True s’il existe un nombre dans la cellule. Incidemment, les valeurs de date sont également interprétées comme des valeurs numériques, car les dates sont gérées en interne dans Excel sous forme de nombres. Utilisez la fonction Gauche pour vérifier si le premier caractère affiché dans la cellule est le caractère #. Vous devez utiliser la propriété Text pour cette requête. Si les deux conditions s’appliquent, ajustez la colonne à l’aide de la méthode AutoFit.

Souvent, vous ne vouliez agrandir vos lignes que dans une zone très spécifique. Pour ce faire, vous pouvez demander à l’utilisateur, par exemple, le grossissement par lequel la hauteur de ligne actuellement définie doit être agrandie. Pour ce faire, utilisez la macro .

Sub AugmentationDeLaHauteurDeLigne()

Dim line as range

Dim s As String

  Sheets (“Feuil1”). Activate

  s = InputBox (“Spécifiez l’agrandissement de ligne en points.”)

  If s = “” Then Exit Sub

     For Each Line In Selection

         Row.RowHeight = Row.RowHeight + s

     Next line

End Sub

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Fonctions Excel

Macro VBA Utiles

Excel Pratique

Programmation VBA

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x
()
x