2012-05-17 3 views
2

Excel 스프레드 시트에 ~ 300 개의 문자열이 있습니다. 콜론을 문자열의 숫자에 삽입하십시오.

는 다양한 길이 있지만 모두 같은 양식을 취

00:33",@"01:03",@"01:33",@"02:03",@"02:33", nil 

: 나는 예를 들어 위의 예제가 될 것, 각 번호의 중심에 콜론을 추가 할 필요가

0033",@"0103",@"0133",@"0203",@"0233", nil 

을 다양한 VBA 함수를 연구했지만 문자열에 문자를 추가하는 코드를 찾을 수 없습니다. 아마도 Excel에서이 작업을 수행하는 간단한 방법이 있을까요?

답변

6

이 기능을 모듈에 추가하십시오.

Function InsertColon(ByVal original As String) As String 
    Dim re As Object 
    Set re = CreateObject("vbscript.regexp") 
    re.Pattern = "(\d\d)(\d\d)" 
    re.Global = True 
    InsertColon = re.Replace(original, "$1:$2") 
End Function 

이제 공식으로 쉽게 사용할 수 있습니다. 예 : A1 셀을 원래 문자열을 포함하고 셀 A2에서 포맷 된 값을 표시 할 경우, A2 셀에 다음 수식을 넣어 :

=InsertColon(A1) 
+0

감사를 제안, 나는이를 때 불행하게도 나는 # VALUE를 얻을! 오류 및 디버깅 할 코드를 잘 이해하고 있는지 잘 모르겠습니다. 코드가 효과가 있습니까? –

+0

+1 나를 위해 잘 작동 – brettdj

+0

+1 저도 잘했습니다. 좋은 한 Pradeep :) –