将文本转换为数字(Microsoft Excel)
如果您使用Excel从外部来源获取信息,则最终可能会在单元格中得到一些非常奇怪的信息。例如,假设您的单元格包含数字,例如1,234.5-。这些在Excel中被格式化为文本单元格,因此不能用于计算。
下面的宏将检查选定范围内的单元格。如果单元格包含文本,并且该文本以减号结尾,则宏会将减号移动到文本的开头,并将其填充回单元格中。结果是该单元格从文本值转换为正确的数值。
Sub ConvToNum() Dim MyText As Variant Dim MyRange As Range Dim CellCount As Integer Set MyRange = ActiveSheet.Range(ActiveWindow.Selection.Address) For CellCount = 1 To MyRange.Cells.Count MyText = MyRange.Cells(CellCount).Value If VarType(MyText) = vbString Then MyText = Trim(MyText) If Right(MyText, 1) = "-" Then MyText = "-" & Left(MyText, Len(MyText) - 1) MyRange.Cells(CellCount).Value = MyText End If End If Next CellCount End Sub
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(11728)适用于Microsoft Excel 2007、2010和2013。您可以在此处为Excel的较旧菜单界面找到此技巧的版本: