1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

안녕하세요 아별님~

오랫만에 찾아왔습니다.

 

요즘 VBA에 관심이 많아 이것저것 하던중.. (정식으로 공부를 시작하진 않았습니다..ㅠㅠ)

아래와 같은 난관에 봉착하여 아별님의 큰 은총을 받고자 질문을 드립니다.

 

일단, 해당 시트의 특정 Range 의 값이 변경될 경우(직접변경), 매크로가 자동실행되도록 짜보았습니다.

하지만, 해당 값이 다른시트의 값을 참조하는 경우 변경으로 보지 않아 매크로가 실행되지 않더라구요..

 

질문 1. 다른시트의 값을 참조하여 값이 변경된 경우에도 매크로가 자동실행되도록 가능한지..

 

질문 2. 안된다면... 특정 셀의 값이 0이 아닐경우, 자동으로 매크로가 실행되도록 가능한지..

 

 

위의 두가지입니다.

 

부탁드리겠습니다! ^^

 

 

http://www.evernote.com/l/ACdkhz0XAkZIQIs9DoproV92cvayVqHPtnc/

 

 

회사내 보안으로 첨부파일은 Evernote 링크로 대체하였습니다.

 

안보일...까요?; ㅠㅠ


댓글 '2'

profile

[레벨:30]아별

2014.10.24 16:42:30
*.132.210.135

jmsynn님 반갑습니다. ^^


아래처럼 Worksheet_Change대신에 Worksheet_Calculate를 사용하시고..


Private Sub Worksheet_Calculate()

    If Intersect(Target, Range("d5:e28")) Is Nothing Then Exit Sub

        Call 목표값찾기

End Sub


모듈에서는 목표값찾기를 아래처럼 특정 시트에서 동작하도록 수정해보세요..


Sub 목표값찾기()

    Dim sht As Worksheet

    Set sht = Sheets("참고")

    sht.Range("D34").GoalSeek Goal:=0, ChangingCell:=Range("D4")

    sht.Range("E58").GoalSeek Goal:=0, ChangingCell:=Range("e4")

End Sub


도움이 되셨기를..


[레벨:3]jmsynn

2014.10.27 16:17:00
*.163.60.21

아별님 답변 감사드려요..

말씀하신 것 처럼 수정해서 실행해보니 컴파일 오류가 뜨더라구요

내용 : 424 런타임 오류가 발생하였습니다. 개체가 필요합니다.

대상 : If Intersect(Target, Range("d5:e28")) Is Nothing Then



이부분 이예요.. 무슨 문제 일까욧?

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 42482