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

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

vba 메세지 창 제어

VBA 조회 수 2720 추천 수 0 2012.10.10 10:29:36

첨부된 예제의 C6셀과 C7 셀에는 함수계산 후 인위적으로 +1, -1이 계산되어져 있습니다.

이러한 것들을 제어하고자 코드가 기록되어져 있는데요.

매크로를 실행하면 이러한 것들을 수정할 것인지를 묻는 대화상자가 나옵니다.

첨부된 예제는 2번 나오는데요. 만약 100개라면 100번 대화상자가 나오게 됩니다.

100개의 셀에 +,- 값이 계산되어져도 대화상자는 1번만 나오도록(물론 1개의 대화상자이더라도 100개의 셀에 이상이 있다는 내용은 출력이 되어야 하구요)하려면 어디를 수정해야 하는지요?


댓글 '4'

profile

[레벨:30]아별

2012.10.11 12:11:44
*.104.126.21

첨부파일이 없네요~

[레벨:4]고수가되고파

2012.10.11 12:49:04
*.104.208.234

헉!. 이런 실수를... 다시 올렸습니다.

profile

[레벨:30]아별

2012.10.11 14:31:30
*.104.126.21

고수가되고파님..

아래와 같은 로직을 이용해보세요..

수식셀들을 순환하면서 수식에 +나 -가 있는 셀들을 rngSum이라는 가상의 영역 범위에 모았다가..

그 셀의 개수를 메시지박스에 띄워서 몇개가 있는지 표시하면 될 것 같습니다.

 

Option Explicit

Sub abFindAdjustedFormulaCells()
    Dim rngSrc As Range
    Set rngSrc = ActiveSheet.UsedRange
    On Error Resume Next
    Set rngSrc = rngSrc.SpecialCells(xlCellTypeFormulas, 23)
  
    If rngSrc Is Nothing Or Err.Number = 1004 Then
        MsgBox "현재 시트에는 수식셀이 없습니다."
        Exit Sub
    ElseIf Err.Number <> 1004 And Err.Number <> 0 Then
        MsgBox "알수 없는 에러가 발생하여 종료합니다."
        Exit Sub
    Else
        Dim r As Range, rngSum As Range
        For Each r In rngSrc
            If InStr(r.Formula, "+") Or InStr(r.Formula, "-") Then
                If rngSum Is Nothing Then
                    Set rngSum = r
                Else
                    Set rngSum = Union(rngSum, r)
                End If
            End If
        Next r
    End If
   
    On Error GoTo 0
   
    Dim msgResult As Long
    If rngSum Is Nothing Then
        MsgBox "임의로 조정된 수식이 없습니다."
    Else
        msgResult = MsgBox(rngSum.Cells.Count & "개의 수식이 임의로 조정되었습니다." & _
                        "수정하시겠습니까?", vbYesNo, " 수식 조정 여부 확인창")
        If msgResult = vbYes Then
            '### 수식을 수정하는 코드를 넣으세요..
        End If
    End If
   
End Sub

[레벨:4]고수가되고파

2012.10.11 16:32:42
*.104.208.234

위 코드를 토대로 다시한 번 짜보겠습니다.

감사합니다.^

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 61226
33 VBA vba로 서식정렬 [4] [레벨:2]정용규 2015-01-03 4919
32 VBA 외부 어플리케이션 실행 & 유저폼 일괄 닫기 & 리본 메뉴 사용자 추가 탭 숨기거나 보이게 하는 방법 [7] [레벨:3]엑셀대단해 2012-02-08 4979
31 VBA 2개의 시트를 비교하여 다른 부분을 찾아내는 프로시저 질문입니다! file [3] [레벨:6]파이스 2011-11-24 5108
30 VBA 엑셀 vba 함수 질문드릴게요. [4] [레벨:4]신강현 2013-03-04 5150
29 VBA 엑셀 메모의 배경으로 삽입한 이미지 추출하기 file [레벨:2]이런젬젬 2015-01-06 5160
28 VBA win7 64bit / 64bit 엑셀 / 32bit DLL의 사용법이 궁금합니다. file [레벨:1]컴바치 2013-01-04 5288
27 VBA 엑셀 내용에서 영어만 모두 제거할 수 있을까요?? [1] [레벨:1]초보배움 2015-02-20 5434
26 VBA 파일&폴더 ExecuteExcel4Macro로 다른 파일 열지않고 셀 데이터 가져오기 시 실패 file [레벨:1]소주보이 2014-02-28 5549
25 VBA 엑셀 랜덤돌리기 질문입니다 file [2] [레벨:4]신강현 2012-12-07 5611
24 VBA 특정값이 변경될 경우 매크로실행 또는 0이 아닐경우 실행 [2] [레벨:3]jmsynn 2014-10-24 5718
23 VBA 특정색 행 삭제 메크로 배워보고 싶습니다~ imagefile [2] [레벨:1]굿한넘 2015-01-12 6256
22 VBA 병합효과 file [3] [레벨:4]고수가되고파 2012-11-22 6337
21 VBA 한셀안의 서식을 다르게 지정할 수 있는 방법 없을까요? file [5] [레벨:4]부루끄 2011-09-28 6480
20 VBA VBA로 정렬하는 법 문의 file [6] [레벨:4]부루끄 2011-07-21 6519
19 VBA 프로그램바 질문 _ 작업 진행바 Progress bar file [2] [레벨:4]신강현 2013-01-30 6547
18 VBA 하이퍼링크셀 선택시 셀값을 오토필터 값으로 연결 file [레벨:1]speena 2015-03-11 6682
17 VBA 조건문을 변수화 하는 방법 [2] [레벨:3]엑셀대단해 2012-07-23 7023
16 VBA 랜덤 출력 관련 짧고 간결(?)한 3가지 질문입니다. _ 중복 없는 랜덤 패스워드 생성하는 방법.. [4] [레벨:6]파이스 2011-11-29 7034
15 VBA vba질문하나 올리겟습니다.ㅠㅠ file [3] [레벨:1]gg남자 2013-03-27 7259
14 VBA 특정개체 수정 관련 [5] [레벨:4]고수가되고파 2015-04-02 7466