Comment ajuster automatiquement les lignes et colonnes dans Excel | IronXL

Comment redimensionner automatiquement les lignes et colonnes d'Excel en C#35;

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXL fournit un redimensionnement automatisé des lignes et des colonnes en C# avec des méthodes telles que AutoSizeRow() et AutoSizeColumn() qui ajustent les dimensions en fonction du contenu des cellules, éliminant ainsi le formatage manuel des feuilles de calcul et prenant en charge les calculs de cellules fusionnées. Cette fonctionnalité automatise les flux de travail Excel en adaptant dynamiquement les dimensions des cellules à leur contenu, garantissant ainsi des feuilles de calcul professionnelles sans intervention manuelle.

Démarrage rapide : redimensionnement automatique d'une colonne ou d'une ligne en un seul appel

Avec IronXL, vous pouvez redimensionner n'importe quelle ligne ou colonne en une seule ligne. Utilisez WorkSheet.AutoSizeColumn(int, bool) ou WorkSheet.AutoSizeRow(int, bool) pour ajuster les dimensions en fonction du contenu des cellules (cellules fusionnées en option). Cette approche fonctionne sur toutes les plateformes .NET sans nécessiter d'installation d'Excel.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronXL avec le gestionnaire de packages NuGet

    PM > Install-Package IronXL.Excel

  2. Copiez et exécutez cet extrait de code.

    // One-line: auto-resize column A including merged cells
    workSheet.AutoSizeColumn(0, true);
    // Or auto-resize row 5 quickly
    workSheet.AutoSizeRow(4, true);
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronXL dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer

Comment redimensionner automatiquement les lignes?

La méthode AutoSizeRow redimensionne automatiquement la hauteur des lignes spécifiées en fonction de leur contenu. Cette fonction garantit que tout le texte contenu dans les cellules est visible, ce qui évite la troncature et améliore la lisibilité. When working with Excel files without Interop, IronXL calculates optimal row height based on font size, cell content, and formatting attributes.

:path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-rows.cs
using IronXL;

// Load existing spreadsheet
WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Apply auto resize on row 2
workSheet.AutoSizeRow(1);

workBook.SaveAs("autoResize.xlsx");
Imports IronXL

' Load existing spreadsheet
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Apply auto resize on row 2
workSheet.AutoSizeRow(1)

workBook.SaveAs("autoResize.xlsx")
$vbLabelText   $csharpLabel

L'algorithme de redimensionnement automatique prend en compte les métriques de police, le remplissage des cellules et les paramètres d'habillage du texte pour déterminer la hauteur optimale. Pour les développeurs qui abandonnent l'automatisation traditionnelle d'Excel, il s'agit d'une alternative efficace qui ne nécessite pas l'installation d'Excel.

À quoi ressemble le résultat ?

Comparaison avant et après d'une grille de données montrant des lignes redimensionnées automatiquement qui s'étendent pour afficher toutes les informations sur les employés

Comment redimensionner automatiquement les colonnes ? Utilisez la méthode `AutoSizeColumn` pour redimensionner la largeur des colonnes en fonction de la longueur du contenu. Cette méthode analyse le contenu le plus long de chaque colonne et ajuste la largeur en conséquence, afin que toutes les données soient visibles sans défilement horizontal. L'algorithme tient compte de la longueur du texte, du formatage des nombres, de l'affichage des dates et de tout autre formatage de cellule affectant la largeur requise. ```csharp :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-rows.cs ``` Lorsque l'on travaille avec des données ou des rapports financiers, il est essentiel que les colonnes soient correctement dimensionnées pour assurer la lisibilité. IronXL's auto-resize functionality integrates with features like cell borders and alignment to create professional spreadsheets. ### À quoi ressemble le résultat ?
Feuille de calcul Excel avant et après le redimensionnement automatique : colonnes étroites avec texte tronqué contre colonnes correctement dimensionnées affichant le contenu complet
ConseilsToutes les positions d'index de ligne et de colonne suivent un indexage à partir de zéro.

Comment gérer le redimensionnement avancé des lignes avec des cellules fusionnées ? Une autre surcharge de la méthode `AutoSizeRow` prend un second paramètre booléen. Ce paramètre permet de prendre en compte les cellules fusionnées lors du redimensionnement. When working with merged cells in Excel, auto-resize behavior becomes more complex as content spans multiple cells. ```csharp :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-rows.cs ``` ### Comment fonctionne le calcul de cellules fusionnées? Si le contenu a une hauteur de **192 pixels** et se trouve dans une région fusionnée couvrant **3 lignes**, lors de l'application du redimensionnement automatique à l'une de ces lignes, l'algorithme divise 192 px par 3, ce qui donne 64 px pour chaque ligne. La méthode `AutoSizeRow` doit être appliquée à chaque ligne individuellement. Cette distribution garantit que le contenu fusionné s'affiche correctement sur toutes les lignes de la région de fusion.
Comparaison avant et après la fonction de redimensionnement automatique des lignes d'Excel montrant l'optimisation de la hauteur de 99 à 33 pixels
### Que se passe-t-il si la valeur est définie sur faux ? Lorsqu'elle est définie sur false, la méthode `AutoSizeRow` ajuste la hauteur de la ligne en fonction de la cellule dont le contenu est le plus élevé. In Microsoft Excel, merging cells retains only the upper-left value and clears the rest. However, IronXL's Merge operation preserves values of other cells in the merged region, providing more flexibility with complex spreadsheets. ```csharp :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-rows-false.cs ```
Comparaison avant et après montrant la fonction de redimensionnement automatique des lignes d'Excel améliorant la visibilité du texte dans les cellules du tableur
For demonstration purposes, I manually adjusted row height instead of using the Excel autofit row height function to avoid adding noticeable top and bottom padding. Lorsque le paramètre `useMergedCells` est réglé sur false, la hauteur des cellules fusionnées n'est pas prise en compte. La hauteur de chaque ligne est calculée uniquement en fonction de son contenu. Cette approche permet de conserver des hauteurs de ligne cohérentes, quelles que soient les régions fusionnées.

Comment gérer le redimensionnement avancé des colonnes avec des cellules fusionnées ? Comme pour `AutoSizeRow`, vous pouvez faire en sorte que le redimensionnement des colonnes tienne compte de la largeur des cellules fusionnées. Lorsque l'option `true` est activée, si une cellule fusionnée a le contenu le plus long, la largeur de la colonne redimensionnée est égale à la largeur de la cellule fusionnée divisée par le nombre de colonnes dans la région fusionnée. This feature helps when creating spreadsheets with complex layouts. ```csharp :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-columns.cs ``` ### Comment fonctionne le calcul de la largeur des cellules fusionnées? Si le contenu a une largeur de **117 pixels** dans une région fusionnée couvrant **2 colonnes**, l'application du redimensionnement automatique à n'importe quelle colonne donne 59 pixels pour chaque colonne. La méthode `AutoSizeColumn` doit être appliquée à chaque colonne individuellement. Cette distribution proportionnelle garantit que le contenu fusionné s'affiche correctement sur toutes les colonnes de la région de fusion.
Comparaison avant et après montrant le redimensionnement automatique des colonnes d'Excel réduisant la largeur de la colonne B de 117 à 59 pixels
### Que se passe-t-il si la valeur est définie sur faux ? Lorsqu'elle est définie sur `false`, la méthode `AutoSizeColumn` ajuste la largeur en fonction de la cellule dont le contenu est le plus long. In Microsoft Excel, merging cells keeps only the upper-left value and erases the rest. However, IronXL's Merge method preserves values of other cells in the merged region, giving developers more control over their data. ```csharp :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-advance-columns-false.cs ```
Avant et après le redimensionnement automatique des colonnes d'Excel montrant l'ajustement optimisé de la largeur des colonnes pour les données textuelles
La largeur des cellules fusionnées n'a pas été privilégiée, ce qui n'a entraîné aucune modification de la largeur, car la largeur de chaque colonne a été calculée en fonction de la largeur de son contenu. ## Quelles sont les différences entre Excel et IronXL Auto Resize? La compréhension des différences entre la fonctionnalité d'ajustement automatique native d'Excel et la mise en œuvre d'IronXL.Excel aide les développeurs à prendre des décisions éclairées lors de l'automatisation des opérations sur les feuilles de calcul. Ces différences sont importantes lorsqu'il s'agit de maintenir la cohérence entre les plateformes ou lorsqu'un contrôle précis des dimensions des cellules est nécessaire. ### Qu'est-ce qui différencie les rangées? La fonction d'ajustement automatique de la hauteur des lignes d'Excel applique aux cellules une marge supérieure et inférieure perceptible. IronXL permet un contrôle précis de la hauteur des lignes, en calculant l'espace exact nécessaire pour le contenu sans rembourrage supplémentaire. Cette différence est importante lorsque l'on travaille avec des données très denses ou lorsque des mises en page d'impression précises sont nécessaires.
Comparaison du redimensionnement automatique d'Excel et d'IronXL.Excel montrant une gestion différente des lignes pour des données de test identiques
### Comment les colonnes se différencient-elles? La fonction d'ajustement automatique de la largeur des colonnes d'Excel applique un remplissage à gauche et à droite aux cellules, mais de manière moins visible. IronXL focuses on exact content width, beneficial when working with automated reporting systems where space optimization is crucial.
Excel vs IronXL comparaison de redimensionnement automatique de colonnes montrant différentes mesures de largeur pour un contenu identique

Comment redimensionner manuellement la hauteur et la largeur ? Outre l'utilisation des méthodes `AutoSizeRow` et `AutoSizeColumn` pour calculer et ajuster automatiquement les dimensions, vous pouvez ajuster manuellement la largeur et la hauteur des colonnes et des lignes pour répondre à des besoins spécifiques. Le dimensionnement manuel est utile lors de la mise en œuvre de formats de rapport standardisés ou de l'utilisation de modèles nécessitant des dimensions spécifiques. - Ajuster la hauteur : définir la propriété `Height` de `RangeRow` - Ajuster la largeur : définir la propriété `Width` de `RangeColumn` ```csharp :path=/static-assets/excel/content-code-examples/how-to/autosize-rows-columns-manual.cs ``` ### Quelles unités Excel utilise-t-il pour la hauteur et la largeur? Les unités de mesure de la hauteur et de la largeur diffèrent dans Excel. La hauteur est mesurée en 1/20 de point, tandis que la largeur est basée sur le nombre de "0" qui tiennent dans une cellule en utilisant la police spécifiée dans le style `Normal`. When working with IronXL's API, understanding these conversions is essential for precise layouts. Pour simplifier la conversion des unités, interprétez les valeurs IronXL en pixels d'affichage dans Microsoft Excel. Un pixel est défini comme 1/96 de pouce, quelle que soit la résolution de l'écran. Excel est indépendant de la résolution et ne dépend pas des pixels physiques. La relation entre les mesures de hauteur et de largeur d'IronXL et d'Excel : - Hauteur : `RangeRow.Height = 10` donne environ `1 pixel` - Largeur : `RangeColumn.Width = 23.255` correspond à **1 pixel** Pour les développeurs qui ont besoin d'un contrôle précis de la mise en page des feuilles de calcul, ces facteurs de conversion permettent de calculer les dimensions avec précision. Combiné à d'autres fonctions de mise en forme, le dimensionnement manuel permet de contrôler totalement l'apparence des documents Excel. Remember to apply your license key when deploying applications using these features in production.

Questions Fréquemment Posées

Comment redimensionner automatiquement les lignes d'Excel en fonction du contenu des cellules en C# ?

IronXL propose la méthode AutoSizeRow pour ajuster automatiquement la hauteur des lignes en fonction du contenu des cellules. Il suffit d'appeler workSheet.AutoSizeRow(rowIndex, includeMergedCells) où rowIndex est le numéro de ligne basé sur le zéro. La méthode calcule la hauteur optimale en fonction de la taille de la police, du contenu des cellules et des attributs de mise en forme, ce qui permet de s'assurer que tout le texte est visible sans être tronqué.

Est-il possible de redimensionner automatiquement les colonnes des feuilles de calcul Excel par programmation ?

Oui, IronXL propose la méthode AutoSizeColumn pour ajuster automatiquement la largeur des colonnes. Utilisez workSheet.AutoSizeColumn(columnIndex, includeMergedCells) pour redimensionner les colonnes en fonction de leur contenu le plus long. L'algorithme tient compte de la longueur du texte, du formatage des nombres, de l'affichage des dates et d'autres formatages de cellules pour déterminer la largeur optimale.

Le redimensionnement automatique fonctionne-t-il avec les cellules fusionnées ?

IronXL prend en charge le redimensionnement automatique des cellules fusionnées grâce au paramètre booléen des méthodes AutoSizeRow et AutoSizeColumn. Définissez le second paramètre à true (par exemple, workSheet.AutoSizeColumn(0, true)) pour inclure les calculs des cellules fusionnées lors de la détermination des dimensions appropriées.

Quels sont les facteurs pris en compte lors du redimensionnement automatique des lignes et des colonnes ?

L'algorithme de redimensionnement automatique d'IronXL prend en compte de multiples facteurs, notamment les métriques de police, le remplissage des cellules, les paramètres d'habillage du texte, le formatage des nombres, l'affichage des dates et les bordures des cellules. Cette approche globale garantit des feuilles de calcul d'aspect professionnel avec des cellules de taille appropriée qui s'adaptent à tout le contenu sans intervention manuelle.

Dois-je installer Microsoft Excel pour utiliser les fonctions de redimensionnement automatique ?

Non, IronXL fonctionne de manière autonome sans nécessiter l'installation d'Excel. La bibliothèque effectue tous les calculs en interne, ce qui la rend idéale pour les environnements de serveur et les scénarios de déploiement où Excel ne peut pas être installé. Cette approche fonctionne sur toutes les plateformes .NET.

Puis-je redimensionner automatiquement plusieurs lignes ou colonnes à la fois ?

Alors que les méthodes AutoSizeRow et AutoSizeColumn d'IronXL fonctionnent sur des lignes/colonnes individuelles, vous pouvez facilement passer en boucle sur plusieurs éléments pour les redimensionner. Cela permet le traitement par lots de feuilles de calcul entières ou de plages spécifiques, automatisant ainsi efficacement les flux de travail d'Excel.

Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il a une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, documentation et expérience globale.
Prêt à commencer?
Nuget Téléchargements 1,765,830 | Version : 2025.12 vient de sortir