Impression d’une seule colonne dans plusieurs colonnes (Microsoft Excel)
Parfois, les données que vous collectez dans une feuille de calcul s’intègrent très bien dans une seule colonne. Par exemple, vous pouvez avoir une liste de noms, et ils sont tous contenus dans la colonne A de votre feuille de calcul. Lorsque vous choisissez d’imprimer la feuille de calcul, elle peut consommer un certain nombre de pages, toutes presque vierges car le côté gauche de chaque page contient un nom et le côté droit contient un espace blanc.
Dans ce type d’instance, il serait bien d’imprimer la colonne unique comme s’il s’agissait de plusieurs colonnes. De cette façon, vous pouvez utiliser plus de chaque page imprimée et moins de pages globales pour votre travail d’impression. Malheureusement, Excel ne contient aucune commande intrinsèque ou paramètre d’impression qui vous permet de reformater automatiquement vos données afin qu’elles s’impriment mieux. Il existe cependant des solutions de contournement.
Une solution de contournement souvent négligée consiste simplement à copier la liste à une seule colonne dans un document Word vierge. Si vous le collez là sous forme de texte brut, vous pouvez formater chaque page pour plusieurs colonnes et imprimer les informations.
Si vous préférez ne pas impliquer Word, vous pouvez couper et coller les informations de la première colonne dans d’autres colonnes pour donner le nombre souhaité de colonnes d’impression. Ceci, bien sûr, doit être fait dans une nouvelle feuille de calcul ou un nouveau classeur, afin que les données d’origine restent intactes. Par exemple, si vous avez 200 noms dans votre liste d’origine, vous pouvez couper 40 noms à la fois dans la liste et les coller dans les colonnes A à E d’une nouvelle feuille de calcul. L’impression de cette feuille de calcul nécessite moins de pages que l’impression de la feuille de calcul originale à une seule colonne.
Bien sûr, si vous devez souvent faire ce copier-coller, la corvée peut rapidement devenir fastidieuse. Dans ce cas, vous pouvez utiliser une macro qui fait exactement la même chose: elle découpe et découpe la liste d’origine et la colle dans un certain nombre de colonnes sur un nouveau classeur.
Sub SingleToMultiColumn() Dim rng As Range Dim iCols As Integer Dim lRows As Long Dim iCol As Integer Dim lRow As Long Dim lRowSource As Long Dim x As Long Dim wks As Worksheet Set rng = Application.InputBox _ (prompt:="Select the range to convert", _ Type:=8) iCols = InputBox("How many columns do you want?") lRowSource = rng.Rows.Count lRows = lRowSource / iCols If lRows * iCols <> lRowSource Then lRows = lRows + 1 Set wks = Worksheets.Add lRow = 1 x = 1 For iCol = 1 To iCols Do While x <= lRows And lRow <= lRowSource Cells(x, iCol) = rng.Cells(lRow, 1) x = x + 1 lRow = lRow + 1 Loop x = 1 Next End Sub
Lorsque vous exécutez cette macro, vous êtes invité à sélectionner la plage que vous souhaitez convertir, puis il vous est demandé de spécifier le nombre de colonnes que vous souhaitez reformater. Il crée une nouvelle feuille de calcul dans le classeur actuel et copie les informations de l’original dans autant de colonnes que vous avez spécifié.
Pour obtenir des ressources supplémentaires pour résoudre ce problème, consultez les sites Web suivants:
http://www.ozgrid.com/VBA/MiscVBA.htm#Print http://www.mvps.org/dmcritchie/excel/snakecol.htm
ExcelTips est votre source pour une formation Microsoft Excel rentable.
Cette astuce (2219) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:
link: / excelribbon-Printing_a_Single_Column_in_Multiple_Columns [Impression d’une seule colonne dans plusieurs colonnes]
.