强制Excel 2007将文本中的所有值视为一个列

我在Excel中有大量的数据。 这些数据应该全部作为文本来处理,但是在一些单元格中,Excel“神奇地”将数据更改为数字。 这是在我的vlookpup()function在电子表格的另一部分搞砸了,我需要重写Excel的自动数据types检测。

如果我手动通过单元格,并附加到每个数字单元格,它的工作原理。 我只是不想亲手做几千个细胞。

例如,这工作:手动键入'209

这不起作用:手动input209 ,右键单击并格式化为文本。

如果更改列的格式不是一个选项,有时候可以创build另一个'vlookup friendly'的列,并且只留下主列。

这是我用过几次的一个技巧:

说你的“混合”栏是A栏

在B栏中input公式:

  =CONCATENATE(A1) 

或者让 – 弗朗索瓦(Jean-François)在评论中指出,较短的版本:

  =A1 & "" 

把它拖到最下面一排。

B列将是所有的string。 VLookup可以使用列B.

像Jean提到的那样,将单元格设置为“文本”格式应该可行。 在任何版本的Excel中,最简单的方法是:

右键单击单元格,“格式单元格”,“数字”选项卡,select“文本”格式。

你有没有尝试设置单元格的数字格式为“文本”?

在Excel 2003中:格式>单元格…>数字>类别:文本。

我没有更新的Excel版本,但它必须是类似的东西。

在“数据”选项卡下,打开“文本到列”向导并将“列”数据格式设置为“文本”。 目标单元格可以设置为原始数据单元格,但是它将用文本格式replace原始格式。 其他方面的格式,如粗体,颜色,字体等不会改变使用这种方法。

我尝试了以上所有,但没有工作。 然后在数字前加上一个撇号。 只有这样它才会从指数表示法变成文本。

如果你已经有了你的数据,并且在每个单元格的数据前面手动添加一个引用不是一个选项,你可以使用一个辅助列并写

 ="'"&A1 

在B1中,其中A1是对单元格的引用,并将B1中的公式拖动到底部。 此时,您将看到报价,并且需要将B列中的数据粘贴为值(CTRL + C&ALT + E + S和select值,或者从顶部菜单中粘贴为特殊值)。 然后find+('quote(引用)'replace为'(quote)'),你将得到一个列值,每个数字表示的前面都有一个值为text和一个引号。