샘플 시트이다 :엑셀 2007 비주얼 베이직 : 최소값 여기
콜라 COLB, COLC
A, 0.2, 10 %
A, 0.3, 1 %
A, 0.5, 6 %
B, 0.4, 9 %
B, 0.3, 8 %
B, 1.2, 40 % 나 SP의 COLB에서 최소값을 찾아야
ColA에 값을 입력하고이 행의 ColC이 15 %보다 큰지 확인하십시오. 그렇다면 ColB의 반환 값입니다. 그렇지 않은 경우 다음 최소값을 찾아 이전에 찾은 값과 합계 한 다음 합계가 15 %보다 큰지 등을 다시 확인합니다. 에서 마지막으로 합한 값을 반환합니다. ColB.
예 (콜라 = ""에 대한)
1.하기 COLB에서 최소값을 찾아 (셀 : B2, 값 0.2)
2. 값 COLC이있는 경우 행 (셀 : C2, 값 10 %)이 이전 값과의 합이 15 %보다 큼 (일치하지 않음) 합계 : 0 + 10 % = 10 %.3)
4. 확인> 15 % 조건 -> (셀 : C3, 값 1 %) 이전과의 합계 (셀 : B4, 값 0.5)
6. 15 % 조건 -> (셀 : C4) 값을 확인하십시오. 이전 브로 = 11 % + 6 % = 17 %로, 값 6 %) 합계 (조건
7. 우리 합산 마지막 셀 C4이었다)을 충족하고 있으므로이 행 COLB로부터 값을 반환 - 0.5
("B"에 대한 대답은 0.4입니다.)
이 문제를 해결하기위한 힌트를 요청하고 싶습니다. 그것은 분명 희망, 여기
내 함수의 프로토 타입입니다)Function foo(ColA As String) As Integer
분할)하여 시트에 맞게 'ColA'의 값에 의해'ColB'로 정렬하고,'ColC'의 누적 합계를 만들고,이 합계의 첫 번째 값을 15 % 이상 찾아서 그 요소에 대해'ColB'의 값을 취합니다. – James