EXCEL>如何刷新单元格以应用新的单元格格式?
我在单元格中有一个值,比如123456789.12345
。 默认情况下,excel显示为123456789.1
。 我需要看逗号后的所有数字,所以我改变单元格格式为自定义> @
要应用此更改,我需要刷新单元格,例如select它并按F2
,然后按Enter键。 但是如何将这个刷新应用于一个列或一个范围呢?
请尽可能不要使用VBA。
- 以您想要的方式格式化第一个单元格。
- 以正确的格式复制单元格。
- select其他单元格。
- 鼠标右键 – >select性粘贴(或Ctrl + Alt + V )。
- select格式RadioBox。
- 点击确定button。
- 按Enter键 。
你可以加快这个过程:
没有VBA选项
select列并转到数据function区 ,然后单击文本到列 。
select分隔,然后单击下一步。
取消选中所有分隔符,然后单击下一步。
select文本选项,然后按完成
:
所有单元格的数字格式将会更新。
这个窍门有点破解,但是有用。 它所做的是从每一行取所有的值,然后自动重新input到单元格中。 出于这个原因,这个技巧将不适用于公式的单元格。 如果有公式,按F9应重新计算表格并更新数字格式。 但以我的经验,我没有公式的这个问题。
VBA选项
用这个代码创build一个VBA:
Sub Oval1_Click() Dim i As Integer i = 1 Do Until Cells(i, 1) = 0 Cells(i, 1).NumberFormat = "@" Cells(i, 1).Select SendKeys "{F2}", True SendKeys "{ENTER}", True i = i + 1 Loop End Sub
请记住,为了这个工作,你将需要一个名为Oval1_click的“button”,或者只是将代码添加到您创build的button。
说明:!
1:首先我们button点击开始代码
Sub Oval1_Click()
然后我们声明一个将被用作单元行的增量值的variables。
Dim i As Integer i = 1
只有当值不等于0时,我们才开始在A1中翻译的第1行第1列(a)中的循环。
Do Until Cells(i, 1) = 0
我们将@格式分配给所选行(A1)
Cells(i, 1).NumberFormat = "@"
我们select,按F2,然后按Enter,到那一行(A1)
Cells(i, 1).Select SendKeys "{F2}", True SendKeys "{ENTER}", True
我们增加我的价值,所以它可以改变行
i = i + 1
如果我们得到该列中的空单元格,我们完成循环和代码
Loop End Sub
这就是它。
- select一列中的单元格并设置新的格式
- 转到数据 – >文本到列,然后按完成
这应该刷新选定的单元格并应用新的格式。