閱: 1165 | 回: 3
等級:初學(xué)者-
積分:3 -
財(cái)富值:2 -
身份:普通用戶
Sub FillLargeNumbersWithString()
Dim i As Long
Dim currentNum As String
Dim ws As Worksheet
Set ws = ActiveSheet
currentNum = "3240990000001983" ' 起始值(字符串)
' 設(shè)置整列格式為文本,防止 Excel 自動(dòng)轉(zhuǎn)換
ws.Columns(1).NumberFormat = "@"
' 循環(huán) 100 次,每次加 1
For i = 1 To 100
ws.Cells(i, 1).Value = currentNum
currentNum = AddOneToString(currentNum) ' 自定義函數(shù):字符串加 1
Next i
End Sub
' 自定義函數(shù):對大數(shù)字字符串加 1
Function AddOneToString(numStr As String) As String
Dim result As String
Dim carry As Integer
Dim digit As Integer
Dim i As Integer
result = ""
carry = 1 ' 我們要加 1
' 從右往左逐位處理
For i = Len(numStr) To 1 Step -1
digit = Val(Mid(numStr, i, 1)) + carry
If digit = 10 Then
digit = 0
carry = 1
Else
carry = 0
End If
result = CStr(digit) & result
Next i
' 如果最后還有進(jìn)位(如 999 + 1 = 1000)
If carry = 1 Then
result = "1" & result
End If
AddOneToString = result
Dim i As Long
Dim currentNum As String
Dim ws As Worksheet
Set ws = ActiveSheet
currentNum = "3240990000001983" ' 起始值(字符串)
' 設(shè)置整列格式為文本,防止 Excel 自動(dòng)轉(zhuǎn)換
ws.Columns(1).NumberFormat = "@"
' 循環(huán) 100 次,每次加 1
For i = 1 To 100
ws.Cells(i, 1).Value = currentNum
currentNum = AddOneToString(currentNum) ' 自定義函數(shù):字符串加 1
Next i
End Sub
' 自定義函數(shù):對大數(shù)字字符串加 1
Function AddOneToString(numStr As String) As String
Dim result As String
Dim carry As Integer
Dim digit As Integer
Dim i As Integer
result = ""
carry = 1 ' 我們要加 1
' 從右往左逐位處理
For i = Len(numStr) To 1 Step -1
digit = Val(Mid(numStr, i, 1)) + carry
If digit = 10 Then
digit = 0
carry = 1
Else
carry = 0
End If
result = CStr(digit) & result
Next i
' 如果最后還有進(jìn)位(如 999 + 1 = 1000)
If carry = 1 Then
result = "1" & result
End If
AddOneToString = result
End Function
安全起見,新建一個(gè)文件運(yùn)行vba以上是ai寫的,填充100行
我的個(gè)性簽名
等級:初學(xué)者