如何在Excel中格式化所有数字
我用Excel来存储数据,但其中一些数据是13个字符的数字,Excel会自动显示它的科学风格。
我需要excel完全显示它。
例如: 4.01924E + 12到4019238159486
我想在VBA中这样做,并将其应用于所有数字。
使用以下内容:
Sub Macro2() Selection.SpecialCells(xlCellTypeConstants, 1).NumberFormat = "0" End Sub
在VBA中使用您select的范围
Selection.NumberFormat = "0"
您可能需要循环范围,首先使用Int(cell / 1)* 1)= 0进行testing,以确保您只是格式化整数,然后应用格式。 我相信有更有效的方法来testing整个工作表并应用格式,但是这给了你一般的想法。
你不能使用MODfunction,因为你会得到一个溢出。 看到这里: 用MOD大量溢出 。 该链接的答案还build议可以使用Chip Pearson的一个function。
所以你会有代码:
Public Sub Formatting() Dim wb As Workbook Dim ws As Worksheet Dim rng As Range Dim cell As Range Set wb = ThisWorkbook Set ws = wb.Worksheets("Sheet1") ' change as appropriate Set rng = ws.Range("A1").CurrentRegion With ws For Each cell In rng.Cells With cell If Not IsError((Int(cell / 1) * 1) = 0) Then cell.NumberFormat = "0" End If End With Next cell End With End Sub
否则在表中
突出显示要转换的单元格,然后转到数字选项卡,展开右下angular的箭头,select自定义并键入0以键入。