如何禁用Excel数字自动格式化


12

这个问题很容易纠正,但是非常烦人的
事情是输入一个小时范围,例如。每个单元格行的(0-1),(1-2),(2-3)等

日期 --- 小时
1/1/2013 0-1
1/1/2013 1-2
1/1/2013 2-3
1/1/2013 3-4

Excel 愚蠢地将格式1-2设置为日期2-Jan
,使情况更糟的是,当我将其更改为数字格式
41276

我也无法在excel 2010中找到“自动套用格式”选项,我知道家中的“格式化”按钮,但是那里没有自动套用格式。


1
选择单元格,右键单击它们,然后将单元格格式从更改GeneralText

小时范围是指1AM -2AM?

尝试将其更改为文本,但仍坚持要求日期。而且也使用军事格式1-24,所以那里没有上午/下午
论坛

2
输入值之前,必须将其更改为文本。看我的答案。

4
最简单的方法是键入'1-2- '告诉Excel将条目视为文本
chris neilsen

Answers:


3

在列/单元格中输入任何值之前,请将单元格格式更改为Text

或者,每次打开工作簿时,将其放在工作簿代码模块中,以在所有工作表上强制采用这种格式。

Private Sub Workbook_Open()
Dim sh As Worksheet

For Each sh In Me.Sheets
    sh.Cells.NumberFormat = "@"
Next

End Sub

我认为使用自定义格式@为我解决了该问题,Text但似乎无法正常工作,这很奇怪。您还知道禁用/启用Excel自动格式设置功能的方法吗?xl2003中曾经有一个
论坛

@forums“自定义格式@”-这是VBA中文本格式的符号))
Peter L.

我尝试使用谷歌搜索,并知道将其更改为文本,但是就像我上面的评论一样,它一直都保持最新状态。不知道为什么@效果很好。也感谢您的ms论坛链接,了解到不能简单地关闭自动格式设置:sigh:
论坛

我感到您的精益求精。当我坚持使用访问权限时,我的老板只是想用excel做所有事情:再次叹息:。您还认为它还原为日期的原因是因为相邻的单元格为日期格式吗?
论坛

不能肯定地说出还原问题,但是众所周知,在尝试“智能化”执行格式(Excel),缩进(字)等
大卫·泽门斯

4
  1. 将所有内容剪切并粘贴到note_pad中
  2. 删除xl中剩余的内容
  3. 选择所有需要的单元格,以行列为文本格式
  4. 从note_pad重新粘贴
  5. 如果以后需要,可以更改日期,时间格式

对于必须采取额外的复制和粘贴到记事本然后重新粘贴到excel的步骤不满意。这是我的“破折号”条目不转换为日期的唯一方法。虚线条目来自外部来源的java表。除了执行“记事本”步骤外,没有其他方法可以停止转换。
CSmith '17

我使用的另一种方式是放置=“ 1-2”,因为之前我需要相同的物料范围信息-缺点是它在计算中不起作用...
Solar Mike

0
  1. 选择所有“ .csv”数据并复制到记事本
  2. 将Excel中新工作表中的所有单元格设置为文本
  3. 将您所有的数据从记事本粘贴为文本
  4. 将“受影响”列复制回记事本
  5. 将所有更改.,(例如10.00到10,00)
  6. 打开新的Excel图书-重要
  7. 将您的专栏从记事本复制到这本新的Excel书中
  8. 将列复制并粘贴回原始Excel书籍

唯一的缺点是您现在使用的是(,)而不是(。)。


0

另一种方法是:

  1. 将工作表另存为CSV
  2. 重命名为 .txt
  3. 在Excel中重新打开
  4. 导入模块被调用
  5. 每个数字列从常规格式转换为文本格式
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.