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

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

vba 메세지 창 제어

VBA 조회 수 2502 추천 수 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 48255

엑셀일반 [엑셀 연결관련] 파일을 열때 "연결중:₩₩ ???₩ ???₩ ~ " 류의 메세지 imagefile [1]

  • [레벨:1]kymylys
  • 2014-05-10
  • 조회 수 6538

안녕하세요 엑셀 문서 서식관련 질문사항입니다 file [1]

피벗테이블 팁부탁드립니다. file [1]

  • [레벨:1]kkabo
  • 2009-07-23
  • 조회 수 6597

[질문] 가로 세로 정열 한줄로 하기 [2]

병합된 셀 정렬하기 [4]

ctrl+F 로 * 를 x 로 바꿀수 있는지 문의드립니다. [2]

  • [레벨:3]rynoel
  • 2010-04-27
  • 조회 수 6622

셀계산시간이 너무 많이 걸립니다. [4]

조건부 서식일때.. 색깔이동.. file [3]

  • [레벨:6]ryanoh
  • 2010-05-11
  • 조회 수 6775

VBA 조건문을 변수화 하는 방법 [2]

VBA 특정개체 수정 관련 [5]

VBA 랜덤 출력 관련 짧고 간결(?)한 3가지 질문입니다. _ 중복 없는 랜덤 패스워드 생성하는 방법.. [4]

제 업무 좀 도와주세요...피벗테이블 중복항목 제외 데이터 개수구하기 file [4]

  • [레벨:3]gsLee
  • 2011-01-21
  • 조회 수 6919

두 시트에서 중복 되는 주민 번호 찾는 거요 [2]

VBA vba질문하나 올리겟습니다.ㅠㅠ file [3]

조건값에따라 행추가(복사) 작업 file [2]

엑셀2007에서 서식이 사라지는 에러 해결 방법 좀 알려주세요.ㅜㅜ [1]

체크박스 클릭 시 자동 자료 입력관련 문의입니다. file [1]

  • 시오
  • 2010-03-22
  • 조회 수 6984

왼쪽 정렬... 줄간격 질문 드립니다. file [2]

한가지 더 질문!! 피벗테이블의 자동 데이터 영역 설정은??;; [4]

  • [레벨:3]harcz
  • 2010-04-27
  • 조회 수 7014

석차구하기 file [1]

  • [레벨:4]쟈니
  • 2010-03-11
  • 조회 수 7078