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

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é Cells 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

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

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