【发布时间】:2022-06-26 23:50:27
【问题描述】:
我想在 Excel 中隐藏部分单元格内容,就像在 MS Word 中一样,我们可以在其中设置所选文本的 Hidden 属性。这个想法是显示一个有代表性的部分,而基础数据可以通过Range(...).Value2 检索。不幸的是,我在 Excel 的 Font 对象中没有看到 Hidden 属性。
作为替代方案,我认为可以使用一些custom number format。我找到了内容占位符@,所以我可以隐藏、替换和填充文本。但是,我没有看到部分显示内容的选项。
是否可以在单元格中设置文本的显示部分?
2022 年 6 月 26 日更新
目前我正在使用事件处理和数字格式的组合。像这样的:
Private Sub Worksheet_Change(ByVal Target As Range)
Const Data = "A1" ' data area to look for
Dim Common As Range
Dim Cell As Range
Set Common = Intersect(Target, Range(Data))
If Common Is Nothing Then Exit Sub
For Each Cell In Common
Cell.NumberFormat = ";;;" & GetFormat(Cell.Value2)
Next Cell
End Sub
Private Function GetFormat(ByVal Value) As String
' Return the first five characters for demonstration purposes
Const Quote = """"
GetFormat = Quote & Left(Value, 5) & "..." & Quote
End Function
结果如下:
和以前一样,我希望这个过程可以简化。
附言
另外需要注意的是,过滤数据时,下拉列表会显示可见值,这在某些情况下非常方便。例如,当您需要根据同义词过滤名称时,我发现将所有同义词替换为基本名称并在过滤器中使用它很方便,将原始名称保留在单元格中。
【问题讨论】:
-
将一些文本格式化为单元格的背景颜色。
-
无论您如何在ab Excel 单元格中隐藏文本,您总是能够通过单击单元格在内容编辑栏中看到实际文本
-
必要时使用“SUBSTITUTE”包含/排除所需的文本
-
您可能还想考虑每个单元格可以包含 cmets,这些 cmets 是隐藏的,可以用于您想要的任何东西...automateexcel.com/vba/add-or-remove-cell-comments
-
@dbmitch 这就是重点。我想将与日期或数字格式相同的方法应用于文本。举个例子,如果文本是文件的完整路径,我只想查看文件名,但基础值应该是完整路径(这不是我的目标,只是说明)。另一个示例 - 隐藏完整消息并仅保留提及的名称。或者隐藏完整的消息并仅显示其模式。