In EXCEL VBA wie trennt ich eine ganze Zahl in einzelne Ziffern, die dann mathematisch, z. die ganze Zahl 123456789 getrennt in 1,2,3, 4, 5, 6, 7, 8, 9 dann (1 * 8), (2 * 16), (3 * 32) usw .; die 1 * 8, 2 * 16, 3 * 32 sind nur Beispiele, die tatsächlichen Multiplikatoren könnten z.B. 1 * 1024, 2 * 2048 usw. Die anfängliche Ganzzahl (123456789) ist eine Variable (ID) von einem anderen Modul innerhalb eines VBA-Projekts. Entschuldigung, wenn ich nicht klar erklärte. Entschuldigung wegen der Formatierung (dies ist mein erster Post im Stackoverflow).So trennen Sie eine ganze Zahl in Ziffern
Option Explicit
Sub NUMalpha()
Private Property Get num() As Integer
NUMlong = Int(id)
End Property
Dim Digit_1 As Integer
Dim Digit_2 As Integer
Dim Digit_3 As Integer
Dim Digit_4 As Integer
Dim Digit_5 As Integer
Dim Digit_6 As Integer
Dim Digit_7 As Integer
Dim Digit_8 As Integer
Dim Digit_9 As Integer
Digit_1 = left(NUMlong, 1)
Digit_2 = Mid(NUMlong, 2, 1)
Digit_3 = Mid(NUMlong, 3, 1)
Digit_4 = Mid(NUMlong, 4, 1)
Digit_5 = Mid(NUMlong, 5, 1)
Digit_6 = Mid(NUMlong, 6, 1)
Digit_7 = Mid(NUMlong, 7, 1)
Digit_8 = Mid(NUMlong, 8, 1)
Digit_9 = right(NUMlong, 1)
End Property
End Sub
finden Sie die Länge oder Ihre Zeichenfolge. Führen Sie dann eine for-Schleife von 1 zur Länge der Zeichenfolge aus und lesen Sie jeweils 1 Zeichen mit der mittleren Funktion. Verwenden Sie die Schleife, um das zu lesende Zeichen zu positionieren. Sie können dann entweder die einzelnen Zeichen einer Variablen zuweisen, um Ihre mathematischen Manipulationen durchzuführen, oder Sie können mathematische Manipulationen innerhalb der Schleife durchführen und eine laufende Summe der Ergebnisse behalten. Es hängt wirklich davon ab, was die Mathematik ist. –
Hallo Dave. Es ist mir nicht klar, wo du 1 * 8 2 * 16 usw. bekommst. Bitte versuche es noch deutlicher zu erklären. –
Welche Codierung haben Sie bisher ausprobiert? –