假设我们有一个电子表格,其中所有行都有相同的默认高度。
在一个单元格中,我们来写Hello
ALT+ENTER World
。我确实有时需要在单元格中输入多行文本,写一些长注释等。
然后这个细胞就会自动地启用Wrap text
按钮(在主页功能区菜单中),并且此特定行将自动地增加其高度。
如何禁用此自动功能Wrap text
?而无需Wrap text
再次手动单击来禁用它?
另请参阅(链接问题没有针对此问题的完美解决方案):
答案1
设置固定行高
为了阻止行高增加以适应包含ALTENTER换行符的内容,您可以将行高设置为固定值。
行高:Fixed Value
对阵 Default
指示
- 选择要锁定高度的行
Row Height
使用以下方法之一 打开对话框:参见以下图片
A。 功能区栏: 选择Home
>Format
>Row Height
B. 老鼠:Right-click
行>left-click
Row Height
C。 键盘: ALT+H然后OH- 选择
OK
接受预填充的行高或设置您选择的数值,然后单击 “好的” * 看 笔记 以下
笔记
ROW HEIGHT
对话框 (说明:步骤 3)
- 有单排选定的
Row Height
对话框中始终会有Row height
场地预填充与行的当前高度。 - 和多行选择后,该字段将预先填充仅有的如果都有高度相同。
- 任何时候预填充,可以立即选择
OK
(编辑字段值变为[可选])。 - 如果高度多行不匹配, 这
Row height
领域将空的. 在这种情况下,值必须输入在选择之前OK
否则,就相当于选择CANCEL
。
丝带条形方法
Home
> Format
>Row Height
右键单击方法
Right-Click
行
键盘方法
ALT+H
然后O
然后H
答案2
您可以告诉我们您使用的是哪个版本的 Office?
如果您拥有的是 Professioanl Plus 版本之一,您可以尝试组策略来禁用此快捷方式。
User Configuration > Administrative Templates > Microsoft Excel 2016 > Disable Items in User Interface > Custom, enable "Disable shotcut keys".
然后输入以下“[key],[modifier]”值:13,16。
欲了解更多信息,请参阅“使用组策略禁用 Office 2013 中的用户界面项和快捷键“。
答案3
- Ctrl + A 选择当前工作表中的所有单元格
- 右键单击任意行号 > 行高 > 确定
- 右键单击任意行号 > 设置单元格格式 > 垂直对齐 = 顶部 > 确定
答案4
这是寻找解决方案时创建的另一种方法。我不确定是否有人会这样做,但它可能会给一些人一个想法。工作簿必须启用宏(XLSM),并且需要将代码放入工作表中。然后,必须选择单元格。不包括禁用屏幕更新等操作。尽情享受吧。
Private Sub Worksheet_Change(ByVal Target As Range)
'If even one cell in the selection has text wrapped, and
'if even one cell in the selection is changed
'then all cells in the selection have WrapText turned off
'Intersect Logic Source
'https://stackoverflow.com/questions/15337008/excel-vba-run-macro-automatically-whenever-a-cell-is-changed
'Modified to prevent Wrap Text from being enabled when cell becomes dirty
'
'Range.WrapText property short description
' It matters not how many cells in the range contain data, if any
' if Me.Range("A1:B3").WrapText =
' True: All cells are wrapped
' False: No cell is wrapped
' Null: at least one, but not all, cells are wrapped
On Error GoTo ErrorRoutine
Dim lngRow1 As Long
Dim lngRow2 As Long
Dim lngCol1 As Long
Dim lngCol2 As Long
Dim rngSelected As Range
'of course, these values would most likely be determined
lngRow1 = 1
lngRow2 = 3
lngCol1 = 1
lngCol2 = 2
' The example demonstrates two formats, for "A1:B3", the first fixed and the second calculated
' The intersect could, of course, consist of a single cell ("A2")
If Intersect(Target, Me.Range("A1:B3")) Is Nothing Then Exit Sub 'I'm unsure how this line helps
Application.EnableEvents = False 'to prevent endless loop
Set rngSelected = Selection 'Reselect their selection
Me.Range(Cells(lngRow1, lngCol1), Cells(lngRow2, lngCol2)).Select
With Selection
If .WrapText = False Then
GoTo ExitRoutine
Else
.WrapText = False
End If
End With
ExitRoutine:
Application.EnableEvents = True 're-enable the events
rngSelected.Select
Set rngSelected = Nothing
Exit Sub
ErrorRoutine:
MsgBox Err.Number & ": " & Err.Description
Resume ExitRoutine
End Sub