ниже числа имеет длину 39, я хочу разделить это на длину 13 и хочу получить эти значения. Поэтому я должен получить 3 значения, такие как A = 0001098600250, b = 0001098600602, c = 0001098600763. Не могли бы вы помочь мне в этом. 000109860025000010986006020001098600763QTP Я хочу разбить это число на 13
ответ
Я не знаю, чего вы пытаетесь достичь точно, но следующее должно дать вам желаемые результаты.
Dim reqnumber,A,B,C
reqnumber = 000109860025000010986006020001098600763
A = Left(reqnumber,13)
B= Mid(reqnumber,14,27)
C= Right(reqnumber,26)
Пробовал немного. Я надеюсь, что это поможет вам.
Let varNum
- это номер. Окончательный вывод arrNums
является массив чисел после разделения
intLen= Len(varNum) ' get lenth of the variable
varNum=Cint(varNum) ' covert to integer
If(intLen Mod 13) then ' if it is not multiple of 13
msgbox "number length is not multple of 13"
Else ' if it is multiple of 13
Dim arrNums() ' initialsie array to store numbers
cnt=intLen/13 ' get count of numbers to be splitted
redim arrNums(cnt-1)
For i=1 to cnt ' loop and split the variable
arrNums(i-1)=Mid(varNum, 13*(i-1)+1, 13) ' store number in array
'i=i+1
Next
End if
Спасибо, Вместо i = i + 1, я прокомментировал это или иначе Он дает только значения нечетного массива. Спасибо за вашу помощь Kiran –
да, вы правы. i = i + 1 следует прокомментировать. –
Предполагая, что ваша строка всегда будет в упаковке 13
butreqnumber = "000109860025000010986006020001098600763"
Dim arr()
ReDim arr(Len(butreqnumber)/13)
j = 1
For i = 0 To (UBound(arr) - 1)
arr(i) = Mid(butreqnumber,j,13)
j = j+13
Next
Спасибо, панкай. –
Если это вам помогло, отметьте его как ответ, чтобы он помог будущим читателям –
Спасибо за помощь butreqnumber = 000109860025000010986006020001098600763 (это число является динамическим, иногда х/13) x может быть 13 или 26 или 39 или 52 и т. Д. Я думаю, что мы должны найти длину, а затем сломаться на 13. Но я не знаю, как это сделать. Помогите мне пожалуйста –