문제

Excel VBA에서 현의 셀 열을 구문 분석하고 싶습니다. 각 셀에는 다음이 포함되어 있습니다.

2 '␂'

이 셀의 내용을 변경하고 싶습니다 (또는 '문자열'직전에 2 개 (또는 숫자가있는 문자) 만 포함하고 싶습니다. 그러한 정보를 구문 분석하는 가장 쉬운 방법은 무엇입니까? 감사합니다.

도움이 되었습니까?

해결책

형식에 대해 확실하다면 '(Apostrophe) 앞에 문자열을 찾아 셀 값을 변경하십시오. 이 값이있는 셀에 있다고 가정하면 다음 VBA 코드를 사용하십시오.

activecell.text = mid(activecell.text, 1, instr(1, activecell.Text, "'")-1)

그것은 아포스트로피를 찾고 캐릭터를 추출하여 현재 셀에 넣습니다.

다른 팁

숫자 데이터가 항상 셀의 시작에 있다고 가정하면 REGEX를 사용하여 문자열 시작시 연속 숫자를 찾을 수 있으며, 첫 번째가 아닌 문자에 도달하면 중지 할 수 있습니다. 여기에 당신을 위해 그것을 할 함수가 있습니다. 나는 그것이 도움이되기를 바랍니다. ^는 셀의 시작을 나타내고 ( d+)는 하나 이상의 숫자 문자를 의미하며.*는 0 이상의 문자를 의미합니다. 필요한 숫자가 하나만 있다고 가정하므로 REGEX가 Submatch 0 (첫 번째 일치)을 반환합니다.

Function ExtractNumericData(ByVal text As String) As String

Application.ScreenUpdating = False
Dim allMatches As Object
Dim RE As Object
Set RE = CreateObject("vbscript.regexp")

RE.Pattern = "^(\d+).*"
RE.Global = True
Set allMatches = RE.Execute(text)
ExtractNumericData = allMatches.Item(0).submatches.Item(0)
Application.ScreenUpdating = True

End Function
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top