2014-02-15 2 views
0

textbox에서 짧은 숫자부터 긴 숫자로 나누고 싶습니다. 236.23.6329.5과 같은 번호를 textbox1에 입력하면이 숫자는 23623006329005으로 변환됩니다.
예컨대짧은 숫자를 긴 숫자로 나누기 Excel에서

내가하면 코딩이 코드를 사용/
 
236.23.6329.5 to 23623006329005 
369.2.326.6  to 36902000369006 
123.23.365236.0 to 12323365236000 
256.36.36598.4 to 25636036598004 

"عبدالله بقشير"Officena.net

Dim sp 
Dim iNum As String 
Dim i As Integer 
For Each sp In Split(Me.Textbox1, ".") 
    i = i + 1 
    iNum = iNum & Format(sp, IIf(i = 3, "0000", "000")) 
    Next 
Me.Textbox1= iNum 

하지만 3,620,360,236에 362.36.236에서이 변환 수가 2가 포함 된 경우 "."

+0

코드를 추가하면 요구 사항과 상충됩니다. 그렇다면 최종 요구 사항은 무엇입니까? 3.3.4.3 또는 3.2.6.3? – L42

답변

0

이 시도 :

Dim mylen, mynum, x, mylong 
Dim i As Integer 

mylen = Array(3,2,6,3) 
mynum = Split(Textbox1,".") 

For i = Lbound(mynum) to Ubound(mynum) 
    x = mynum(i) 
    Do While Len(x) < mylen(i) 
     x = "0" & x 
    Loop 
    mylong = mylong & x 
Next 

내가 변종 변수의 대부분을 선언했다.
해당 데이터 형식의 배열로 직접 선언하여 성능을 향상시킬 수 있습니다.
희망이 도움이됩니다.

+0

제가 어둡게 SP 어둡게 iNum 문자열 어둡게 나는 스플릿의 각 SP의 정수 (Me.Textbox1, ".") 에서 I = I + 1 가 iNum = iNum 및 형식 (SP,하여 IIf 코드를 가지고 (i = 3, "000", "000")) 다음 문자 Me.Textbox1 = iNum 그러나 입력 텍스트에 632.2.36부터 632002036까지 숫자를 변환하십시오. 텍스트 상자 에 내가 12323365236000 256.36.36598.4 수를 포함 세 25636036598004에에 36902000369006 123.23.365236.0에 23623006329005 369.2.326.6에 236.23.6329.5에서 숫자를 변환 할 "." – klma7lwa

+0

흠. 그래서 항상 마지막 점 '.'이 누락 되었습니까? – L42

+0

도와 줘서 고마워.하지만 내 질문 다시 볼 수 – klma7lwa

관련 문제