엑셀 VBA에서 롤링 평균
아래 우리는 롤링 평균 테이블을 생성 엑셀 VBA에서 프로그램을 볼 것이다. 워크 시트에 명령 단추를 놓고 다음 코드 줄을 추가 :
Range("B3").Value = WorksheetFunction.RandBetween(0, 100)
이 코드 라인 셀 B3에 0과 100 사이의 임의의 수를 입력한다. 우리는 엑셀 VBA가 새로운 주식 값을 먹고 싶어하고, 롤링 평균 테이블의 첫 번째 위치에 배치합니다. 다른 모든 값은 한 곳을 아래로 이동해야하며, 마지막 값을 삭제해야합니다.
워크 시트 변경 이벤트를 만듭니다. 워크 시트에서 셀을 변경할 때 워크 시트 변경 이벤트에 추가 된 코드는 엑셀 VBA에 의해 실행됩니다.
-
Visual Basic 편집기.
프로젝트 탐색기에서 시트 1 (Sheet1의) 2. 두 번 클릭합니다.
왼쪽 드롭 다운 목록에서 워크 시트를 선택합니다. 오른쪽 드롭 다운 목록에서 변경을 선택합니다.
워크 시트 변경 이벤트에 다음 코드 줄을 추가합니다
두 유형의 정수 범위 (firstfourvalues 및 lastfourvalues)의 NEWVALUE라는 변수를 선언 4.
Dim newvalue As Integer, firstfourvalues As Range, lastfourvalues As Range
-
워크 시트 변경 이벤트는 Sheet1의 모든 변경 사항을 수신합니다. 우리는 뭔가 B3 셀에 변경하는 경우 엑셀 VBA 뭔가를하고 싶다. 이를 위해, 다음 코드 줄을 추가 :
If Target.Address = "$B$3" Then
-
우리는 B3 셀의 값 NEWVALUE 초기화, 범위와 firstfourvalues : ( “: D7 D4”) 범위 ( “D3 D6”)와 lastfourvalues.
newvalue = Range("B3").Value Set firstfourvalues = Range("D3:D6") Set lastfourvalues = Range("D4:D7")
-
이제 간단한 트릭을 온다. 우리는 롤링 평균 테이블을 업데이트합니다. 당신은 테이블의 첫 번째 네 개의 값을 마지막 네 개의 값을 교체하고 첫 번째 위치에 새로운 주식 가치를 배치하여이 작업을 수행 할 수 있습니다.
lastfourvalues.Value = firstfourvalues.Value Range("D3").Value = newvalue
은 if 문을 닫을 것을 잊지 마십시오 8..
End if
셀 D8로 (D7 D3) (9) 마지막으로, 수식 = AVERAGE를 입력한다.
-
테스트 명령 버튼을 클릭하여 프로그램.