使用VBA将文本列转换为数字

我正在寻找sorting和分组基于1列的工作簿。 该列是从外部软件中提取的,因此以文本forms导入。

我试图使用:

Sub Whatever() With ActiveSheet.UsedRange .Value = Evaluate(.Address & "*1") End With End Sub 

但是,当我只需要列P(实际上P2通过由列标签产生的任何内容)进行转换时,它会将所有列转换为数字。 关于如何转换1列的想法?

试试这个代码:

 Sub test() Dim lastrow As Long lastrow = Application.Max(2, Cells(Rows.Count, "P").End(xlUp).Row) With Range("P2:P" & lastrow) .NumberFormat = "0" .Value = .Value End With End Sub 

如果将范围值设置为自己,则会将文本转换为数字。 即

 Columns("P").Value = Columns("P").Value