62

When you have text in an Excel cell that is too long to be shown in the visible area of that cell, and the next cell on the right is empty, Excel lets the text be displayed in that next cell (and the next, and the next, as needed). I want to change this; I want to avoid this text overflow.

I know I can avoid this by enabling "word wrap" and adjusting row height. But that is not what I want.

I want to change the DEFAULT behavior of Excel so it shows the value of each cell only in the visible area of that cell. No overflow, no word wrap.

Is this possible? (I am using Excel 2010, by the way.)

  • 5
    if it'll turn out not to be possible, you can use a space character to the empty cells... – Aprillion Nov 19 '12 at 16:45
  • quite interesting - I don't know of any other way than using WordWrap,Font-AutoSize or characters in the other cells. – Jook Nov 19 '12 at 17:28
  • 1
    You can truncate extra characters by selecting all cells, going to Data / Text to Columns and specifying a break after as many characters as can fit in a cell without wrapping/overflowing. Remember to skip the additional column created that holds the extra chars! – Karan Nov 20 '12 at 17:20
  • I guess this would answer your question: superuser.com/a/878605/497156 – Sulaiman Sep 22 '15 at 12:26
2

This may not be an option for everyone, but if you import the document into Google Sheets, this functionality is supported by default. On the top menu bar, three types of text wrapping are supported. Overflow, wrap, and clip. You are looking for clip.

Depending on the requirements, this may be a viable option for some people.

  • 3
    So your answer is actually saying drop Excel and go with Google sheets. – Solar Mike Dec 13 '17 at 19:42
  • Like I said, not an option for everyone, but may be a good solution for some. – yellavon Dec 15 '17 at 3:22
  • @SolarMike - thank you. I was confused, but your comment sorts out this answer. I think &yellavon assumes people will balk at his answer and as such is defensive - before actually explaining the answer. Your comment is more concise compared to the actual posted answer. – barrypicker Jun 15 '18 at 19:29
  • Actually this happens to be the answer most close to an actual solution. I discoevered that in Excel you can do something similar to this. Adjust the column to the required width, then enable word-warp on the column (which will cause all row heights to increase) and then finally select all rows and adjust row heights to the desired height. Voila! You now have text in cells that do not overflow to the adjacent cells.(@yellavon: I will accept your answer, you might wanna update it to contain this EXcel behavior so people can access the solution more easily) – e-mre Oct 8 '18 at 9:53
37

Yes, you can change this behaviour, but you will probably not want the side effects this causes.

The key to limiting the cell contents to the cell's boundaries regardless of whether the adjacent cell contains data is the text alignment Fill. Select the cells you don't want to overflow and right click them > Format cells... > Alignment tab > Horizontal alignment > Fill

The problem with this method is that this will actually fill cells by repeating their content when it is short enough to fit in the cell multiple times. See below screenshot for what this means. (Note that B7 is filled with 'short text'.)

Screenshot showing the different text alignment behaviour for default and fill

It seems like you will be stuck with the workarounds in Benedikt's post

Note that you could also fill the adjacent cells with tick characters (') using Benedikt's first, very clever method. This way you don't have to hide anything, prevent cell overflow and if you copy the cells as text (let's say to notepad) you still get empty text and not spaces or ticks.

  • 1
    So I took your suggestion of following Benedikt's method to fill the empties with ' characters. Now I don't know whether I should upvote your answer, or his, or what! :-p – Dan Henderson Mar 24 '16 at 16:02
  • I'm even more confused. I can't see any suggestion to use ' in Benedikt's answer at all, including in old edits! I've upvoted both, just in case... – user568458 May 9 '16 at 12:49
  • @user568458: My note was actually a variation of Benedikt's answer. You could fill the cells with ' instead of filling them with N/A as Benedikt suggested. I just found Benedikt's method of filling all blank cells with an arbitrary value very compelling. – Marcus Mangelsdorf May 9 '16 at 18:15
  • 1
    'Fill' will cause numbers to become left aligned as well. – posfan12 Aug 12 '16 at 8:33
  • How...amazingly stupid. (Excel, not this answer.) – T.J. Crowder Mar 8 '18 at 15:51
22

Here's how I do it.

  1. Option 1: Fill all empty cells with a "N/A" and then use Conditional Formatting to make the text invisible.
  2. Or Option 2: Fill all empty cells with 0 and use an Excel setting to hide zero values.

Filling all empty cells: (tested on a Mac)

  • Edit → Go To... → Special ... (On Windows: Home → Editing → Find & Select → Go To Special...)
  • Select "Blanks" and hit OK.
  • All blank cells are selected now. Don't click anything.
  • Type "N/A" or 0, and then hit Ctrl+Enter. This will insert the value into all selected cells.

Conditional Formatting to Hide "N/A"

  • Format → Conditional Formatting.
  • Create new rule.
  • Style: Classic, and Use a formula to determine which cells to format.
  • Formula: =A1="N/A"
  • Format with: Custom Format: Font color white, no fill.

Hide Zeros

  • Excel → Settings → View.
  • Untick "Show zero values".

_______________
  That's Ctrl+Enter, not Ctrl+Shift+Enter.

10

Try entering the formula ="" (that's two double quotes) in the adjacent cell where you don't want to see the overflow. This evaluates to "null" which displays nothing and won't affect math.

  • 1
    Combined with the post from Benedikt I believe this is one of the easiest solutions as you don't have to hide anything. – Matt Feb 26 '18 at 16:18
  • This worked best for me. – Peter Jun 4 '18 at 18:36
2

Use the Horizontal Text alignment "Fill" for the cell. You can find it in the same place as other Alignment options that should solve your problem

Fill Text Alignment

  • 3
    Wasn't this covered by Marcus Mangelsdorf's answer? – Steven M. Vascellaro Oct 31 '17 at 19:05
  • 7
    Also note that Marcus explains a severe problem with this method - that if the contents of the cell are short enough, they will be duplicated. So "A" would become "AAAAAAAA". – Blackwood Oct 31 '17 at 19:54
2

Expanding on the solution of using ' to block Excel's rightwards spilling of text into adjacent blank cells, sometimes you don't want to modify/corrupt your data column by inserting that value in there.

Instead of inserting the ' in your actual data values, you can create a new dedicated vertical column for this purpose, entirely filled with ' characters all the way down.

1. Barrier column

enter image description here

2. Insert "barrier" column to the left of the column(s) that you want protected.

enter image description here

3. Collapse the barrier columns by setting their column width to a small value

Set the column width to a value such as .1, or alternatively keep the barrier columns wider to act as a margin or inter-column whitespace.

enter image description here

4. Voila!

protected by Community Nov 22 '17 at 9:32

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.