2012-01-03 7 views

답변

5

이 작업을 시도 할 수 : 물론

arrStr = Split(str, " ") 
strCnt = UBound(arrStr) + 1 
msgBox strCnt 

, 당신이 먼저 위의 변수를 선언 Option Explicit 세트 (당신이 ...가해야 )을 가지고 있다면 ..

1

귀하의 요청이 이해가되지 않습니다. 문자열은 일련의 텍스트입니다. 해당 텍스트 시퀀스에 공백으로 구분 된 숫자가 포함되어 있다는 사실은 전혀 관련이 없습니다. 귀하의 문자열은 다음과 같습니다

30 40 50 60 

하지 4 별도의 값가 있습니다, 위 - 하나의 문자열 표시 단 하나의 가치가있다.

11 개의 개별 문자가 포함 된 문자열을 볼 수도 있으므로 문자열의 "개수"가 11이지만이 목표를 달성 할 수는 없다고 주장 할 수 있습니다.

원하는 결과를 얻으려면 문자열을 각 공백에서 여러 문자열로 분할하여 각기 2 자리 숫자 값을 포함하는 4 개의 개별 문자열을 만들어야합니다.

물론, 실제 질문은이 값을 문자열의 첫 번째 위치에 저장하는 이유입니다. 숫자 값인 경우 배열에 저장해야합니다 (예 : Integer 배열). 그런 다음 LBound()UBound() 함수를 사용하여 배열의 요소 수를 쉽게 얻을 수 있습니다.

1

나는 코디가 말한 모든 것에 동의합니다.

정말로 원한다면 문자별로 문자열을 반복하고 구분 기호를 찾은 횟수를 계산할 수 있습니다. 귀하의 예에서는 공백으로 구분되어 공백 수를 계산하고 1을 더하는 것이지만 코디가 말했듯이 공백은 별도의 값이 아닙니다 ..

여기에서 텍스트를 구문 분석하려고합니까? 그럼에도 불구하고 실제로해야 할 일은 데이터를 배열에 저장하는 것입니다. 인생을 더 쉽고 어렵게 만드십시오.

관련 문제