2012-10-11 3 views
3

Excel에서 학교의 비용 분석을 실행하려고합니다. 각기 다른 수의 학생들이 각기 다른 수의 교수진을 고용하기 위해 비용을 분석해야합니다. 솔버를 사용하여 각 부서의 요구 사항을 계산합니다. 그리고 10 년 동안 비용을 계산하기 위해 솔버를 10 번 실행해야합니다. 그리고 우리는이 절차를 반복하는 데 필요한 수수료를 변경합니다. 솔버 트리거를 자동화 할 수있는 방법이 있습니까? 최선의 대안이 아니라면? 내 인생을 편하게 해줄 다른 소프트웨어가 있습니까?시트의 일부 숫자가 바뀔 때 엑셀 솔버가 자동으로 실행됩니다.

답변

1

WorkSheet_Changed 이벤트에 가입해야합니다.

해당 이벤트는 워크 시트에서 변경 될 때마다 실행됩니다. 다음과 같은 if 문을 작성해야합니다.

if the cells in the appropriate range have been changed: 
    do the operation that you need 
0

솔버의 매크로 기록을 시작합니다. 그런 다음 Visual Basic Editor로 이동하여 매크로가 제대로 실행될 수 있다고 생각할 때까지 (즉, 시작 위치와 상관없이) 매크로를 편집하십시오. 이제 워크 시트 코드 (Visual Basic 프로젝트 탐색기에서 워크 시트를 두 번 클릭)로 이동하여 매크로를 worksheet_change 매크로에 복사합니다.

수수료 셀이 변경되면 매크로를 실행하고 (아래 예제 코드에서 A1으로 가정) 매크로를 실행하여 목표 검색 매크로를 실행하는 동안 이벤트를 사용하지 않도록 설정하면 매크로가 끝나지 않으므로 루프를 반복해라.

Private Sub Worksheet_Change(ByVal Target As Range) 
If Intersect(Target, [A1]) Is Nothing Then Exit Sub 
Application.EnableEvents = False 

'your goal seeking code 

Application.EnableEvents = True 
End Sub 
관련 문제