목표 : 시트 1의 A1 : A2 값이 변경되면 시트 2의 A1 : A2 값이 다음과 같이 자동으로 업데이트됩니다. 이 값들. 다음 시트 1 이벤트 핸들러가 작동하지 : 평소처럼시트 1을 자동으로 시트 2에 복사 A1 : A2를 A1 : A2로 변경했을 때
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
Dim target As Range
Set target = Range("A1:A2")
If Not Intersect(target, Sheets(2).Range("A1:A2")) Is Nothing Then
Range("A1:A2").Value = Sheets(2).Range("A1:A2").Value
End If
Application.EnableEvents = True
End sub
, VBA의 마음 numbingly 불투명 구문 내 몰락이다. VBA의 숨겨진 세부 사항을 설명하는 데 실제로 유용한 VBA 참조 가이드를 참조하면 위의 간단한 작업을 구현하는 데 도움이 될 것입니다.
만 Sheet1에있는 이벤트에 응답 할 Sheet1의 모듈에서 이벤트 핸들러입니다. sheet2에서 이벤트를 catch하려면 해당 시트의 코드 모듈에서 핸들러가 필요합니다. –
실제로 유용한 _VBA 참조 안내서 : 이미 여기 있습니다 ... –
나는 Ted의 제안을 아래에 시도했지만 성공하지 못했습니다. 즉, 이벤트 처리기를 시트 1 코드 모듈에 넣습니다. 시트 1의 셀이 변경되면 시트 2의 셀이 예상대로 변경되지 않습니다. 방법이 있어야합니다. – jmaz