2017-05-22 1 views
0

나는 다음과 같은 코드를 통해 해결사를로드하려고 통해 :얻기 오류 438로드하는 동안 해결사 모두 수동으로뿐만 아니라 VBA

Set r = Range("BC3") 
For i = 1 To 2 

    SolverReset 
    score = r.Value 

    If score = 1 Then 
     SolverLoad loadArea:=r.Offset(1).Resize(8) 
     SolverSolve UserFinish:=True 
     SolverFinish KeepFinal:=1 
     SolverReset 
     SolverLoad loadArea:=r.Offset(1, 1).Resize(11) 
     SolverSolve UserFinish:=True 
     SolverFinish KeepFinal:=1 
     SolverReset 
    Else: 
     SolverReset 
     SolverLoad loadArea:=r.Offset(1, 2).Resize(12) 
     SolverSolve UserFinish:=True 
     SolverFinish KeepFinal:=1 
    End If 

    Set r = r.Offset(43) 

Next i 

코드는 나에게 준

오류 438 : 개체 이 속성 또는 메서드를 지원하지 않습니다.

오류는이 라인에 : 나는 수동으로 동일한 범위를로드하려고

SolverLoad loadArea:=r.Offset(1, 2).Resize(12) 

은, 그것은 다시 나에게 같은 오류를했다.

참고 : 동일한 데이터를 다른 Excel 파일에로드하고 있습니다. 그러나 파일을 변경하고 데이터를로드하면 오류가 발생합니다.

아무도 이유를 알면 친절하게 도와주세요.

+0

2010 년에 정상적으로 작동하므로 코드에 본질적으로 오류가있는 것은 없습니다. – Rory

+0

그래, 내 PC에서 다른 Excel 워크 북에서 잘 실행되는 것처럼 궁금해합니다! 그러나이 방법에서는 작동하지 않습니다. 나는 실제로 테스트를 위해 별도의 통합 문서에서 코드를 생성하고 실행했다가 이제는 원래 통합 문서로 이동하지만 실행하지는 않습니다. –

+0

통합 문서에 다른 코드 - 특히 이벤트 코드 - 또는 참조하는 시트의 병합 된 셀이 있습니까? – Rory

답변

0

비슷한 문제가있었습니다. 시트를 복사 할 때 보관했던 매크로 버튼이 있다는 것을 알았습니다. 나는 그들을 삭제하고 다시 다른 이름을주는 그들을 창조하고 문제는 해결되었다.