Excel - 防止单元格文本溢出到下一个(空)单元格

e-m*_*mre 109 microsoft-excel microsoft-excel-2010

如果 Excel 单元格中的文本太长而无法在该单元格的可见区域中显示,并且右侧的下一个单元格为空,则 Excel 会让文本显示在下一个单元格(以及下一个单元格和接下来,根据需要)。我想改变这一点;我想避免此文本溢出。

我知道我可以通过启用“自动换行”和调整行高来避免这种情况。但这不是我想要的。

我想更改 Excel 的 DEFAULT 行为,以便它仅在该单元格的可见区域中显示每个单元格的值。没有溢出,没有自动换行。

这可能吗?(顺便说一下,我使用的是 Excel 2010。)

Mar*_*orf 72

是的,您可以更改此行为,但您可能不希望由此产生的副作用

无论相邻单元格是否包含数据,将单元格内容限制在单元格边界的关键是文本对齐方式Fill。选择您不想溢出的单元格并右键单击它们> 设置单元格格式... >对齐选项卡>水平对齐>填充

这种方法的问题在于,当它足够短以适应单元格多次时,这实际上会通过重复它们的内容来填充单元格。请参阅下面的屏幕截图以了解这意味着什么。(请注意,B7充满了“短文本”。)

屏幕截图显示了默认和填充的不同文本对齐行为

除此之外,数字将变为左对齐,如果相邻单元格也设置为Fill,文本仍会溢出到该单元格中(感谢posfan12HongboZhu指出这一点)。

所以看起来你真的会被Benedikt 的帖子中的解决方法困扰

建议:您可以'使用Benedikt 的第一个非常聪明的方法用刻度字符 ( )填充相邻单元格。这样你就不必隐藏任何东西,防止单元格溢出,如果你将单元格复制为文本(比方说记事本),你仍然会得到空文本,而不是这些单元格的空格、刻度或任何其他填充字符。

  • 所以我接受了你的建议,按照 Benedikt 的方法用 `'` 字符填充空格。现在我不知道我是否应该赞成你的回答,或者他的,或者什么!:-p (3认同)
  • 此解决方案的另一个问题是:如果右侧的相邻单元格也设置为“填充”并且恰好为空,则文本仍将流入其中... (2认同)

Ben*_*pel 30

这是我如何做到的。

  1. 选项 1:用“N/A”填充所有空单元格,然后使用条件格式使文本不可见。
  2. 选项 2:用 0 填充所有空单元格并使用 Excel 设置隐藏零值。

填充所有空单元格:(在 Mac 上测试)

  • 编辑 ?去... ?特殊...(在 Windows 上:主页?编辑?查找和选择?转到特殊...)
  • 选择“空白”并点击“确定”。
  • 现在选择了所有空白单元格。不要点击任何东西。
  • 输入“N/A”或 0,然后点击Ctrl+ Enter。这会将值插入到所有选定的单元格中。

隐藏“不适用”的条件格式

  • 格式 ?条件格式。
  • 创建新规则。
  • 样式:经典,并使用公式确定要设置格式的单元格。
  • 公式: =A1="N/A"
  • 格式:自定义格式:字体颜色为白色,无填充。

隐藏零

  • Excel ? 设置?看法。
  • 取消勾选“显示零值”。

_______________
  那是Ctrl+ Enter而不是 Ctrl+ Shift+Enter


小智 19

尝试在您不想看到溢出的相邻单元格中输入公式 =""(即两个双引号)。这评估为“null”,它不显示任何内容并且不会影响数学。

  • If 影响统计函数`COUNTA`,它*计算范围内非空单元格的数量*。作为公式结果显示零长度字符串的单元格不是空的,将被计数。 (3认同)

yel*_*von 9

这可能不适合所有人,但如果您将文档导入 Google 表格,则默认情况下支持此功能。在顶部菜单栏上,支持三种类型的文本换行。溢出、包裹和剪辑。您正在寻找剪辑。

根据要求,这对某些人来说可能是一个可行的选择。

  • 所以你的答案实际上是说放弃 Excel 并使用 Google 表格。 (24认同)
  • 这不应该是公认的答案。它没有告诉您如何防止*in Excel* 溢出。 (12认同)
  • 这并不能回答任何问题。接受的答案如何?这个所谓的答案在问题的上下文中甚至没有任何意义。完全不合逻辑、不合理的答案。 (4认同)
  • 就像我说的,这不是每个人的选择,但对某些人来说可能是一个很好的解决方案。 (2认同)

Gle*_*den 7

扩展'用于阻止Excel向右溢出文本到相邻空白单元格的解决方案,有时您不想通过在其中插入该值来修改/损坏您的数据列。

相反,插入的'在您的实际数据值,你可以为此创建一个新的专用垂直列,完全充满'字符一路下滑。

1. 屏障柱

在此处输入图片说明

2. 在要保护的列的左侧插入“屏障”列。

在此处输入图片说明

3.通过将其列宽设置为较小值来折叠屏障列

将列宽设置为一个值,例如.1,或者保持屏障列更宽以充当边距或列间空白。

在此处输入图片说明

请注意,您必须设置大于零的宽度;将垂直屏障列宽度设置为零将恢复到不需要的单元格溢出行为。

4. 瞧!


e-m*_*mre 5

在 Excel 中,将列调整到所需的宽度,然后在该列上启用文字扭曲(这将导致所有行高增加),最后选择所有行并将行高调整到所需的高度。瞧!现在,单元格中的文本不会溢出到相邻单元格。

(注意:我找到了这个并将其作为所选答案中的评论发布,但也将其作为答案发布,以便其他人更容易找到。)

  • 问题的第二段:“我知道我可以通过启用“自动换行”和调整行高来避免这种情况。但这不是我想要的。” (6认同)