Please Note: This article is written for users of the following Microsoft Excel versions: 2007, 2010, 2013, 2016, 2019, and 2021. If you are using an earlier version (Excel 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Excel, click here: Aligning Cells when Importing from CSV.
Written by Allen Wyatt (last updated December 12, 2023)
This tip applies to Excel 2007, 2010, 2013, 2016, 2019, and 2021
Marinos works with CSV files a lot. In his case, the CSV files are created by a custom application and he found that he can even include formulae in them. So if a line of the CSV file contains ",,,Total:,=SUM(D5:D13),,,," the formula is evaluated and all is fine. One thing Marinos wants to do, however, is indicate in the CSV file how individual cells should be justified after they are imported into Excel. He seems to remember that in Lotus 123 he could use a prefix character to indicate the alignment of the cell (' for left, ^ for middle, and " for right); he figures the same capability would be great in Excel.
There is no way to do this in Excel; alignment of imported data is based on system defaults, such that text is left-justified, and numbers are right-justified. One option, however, would be to add a prefix character that you could then later "parse" with a macro to apply the desired alignment. For instance, you could use "<" for left, "^" for center, and ">" for right. When Excel imports the CSV files, the fields are treated as text. You can then run this macro to search for the leading alignment character and do the desired action:
Sub SetJustification()
Dim rCell As Range
For Each rCell In ActiveSheet.UsedRange
With rCell
Select Case Left(.Value, 1)
Case "<"
.Value = Mid(.Value, 2)
.HorizontalAlignment = xlHAlignLeft
Case "^"
.Value = Mid(.Value, 2)
.HorizontalAlignment = xlHAlignCenter
Case ">"
.Value = Mid(.Value, 2)
.HorizontalAlignment = xlHAlignRight
End Select
End With
Next
Set rCell = Nothing
End Sub
The macro checks each cell in the worksheet. If the cell begins with an alignment character, then the character is removed, and the proper alignment is applied.
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (8709) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and 2021. You can find a version of this tip for the older menu interface of Excel here: Aligning Cells when Importing from CSV.
Professional Development Guidance! Four world-class developers offer start-to-finish guidance for building powerful, robust, and secure applications with Excel. The authors show how to consistently make the right design decisions and make the most of Excel's powerful features. Check out Professional Excel Development today!
You can use a macro to read information from a text file. The steps are easy, and then you can use that information in ...
Discover MoreSometimes, when importing data created by other programs, you may find that there is too much for Excel to handle. Here's ...
Discover MoreYou can use Excel for all types of data processing. You may want to work with filenames in a worksheet, but the first ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2023-12-12 09:27:24
Alex
Another option would be to paste as values-only into a template set up with the desired alignment, if it's a repeated process. Ctl + Shift + V is the kb shortcut for that if anyone, like me a few months ago, didn't know.
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments