Board logo

標題: 依據儲存格的錯誤值執行程式 [打印本頁]

作者: myleoyes    時間: 2010-12-6 22:23     標題: 依據儲存格的錯誤值執行程式

各位前輩你們好!
        前輩!問題如下:
          如果C2=#NUM!時執行(自動校正)程式
          Sub 自動校正()
               如果C2 = #NUM!執行Sub 更正1()
               結果C2還是 = #NUM再執行Sub 更正2()
               C2還是 = #NUM再執行Sub 更正3()
              執行3次後 結果C2還是 = #NUM程式出現提示
               MsgBox "原始的資料有誤": End
          End Sub
          概念大概如此!不知這個自動校正程式如何寫?
          請知道的前輩,不吝賜教謝謝再三!!
作者: freeffly    時間: 2012-1-31 17:22

回復 1# myleoyes


    range("C2").text = "#NUM!"
    是指這個嗎?
作者: register313    時間: 2012-1-31 21:06

本帖最後由 register313 於 2012-1-31 21:22 編輯

回復 1# myleoyes
  1. Sub 自動校正()
  2.     If IsError(Range("C2")) Then
  3.        更正1
  4.     End If
  5.     If IsError(Range("C2")) Then
  6.        更正2
  7.     End If
  8.     If IsError(Range("C2")) Then
  9.        更正3
  10.     End If
  11.     If IsError(Range("C2")) Then
  12.        MsgBox "原始的資料有誤"
  13.     End If
  14. End Sub

  15. Sub 更正1()
  16.      MsgBox "更正1"
  17. End Sub
  18.    
  19. Sub 更正2()
  20.      MsgBox "更正2"
  21. End Sub
  22.    
  23. Sub 更正3()
  24.      MsgBox "更正3"
  25. End Sub
複製代碼
工作表模組
  1. Private Sub worksheet_change(ByVal target As Range)
  2.   If target.Address = "$C$2" Then
  3.     If IsError(Range("C2")) Then
  4.        更正1
  5.     End If
  6.     If IsError(Range("C2")) Then
  7.        更正2
  8.     End If
  9.     If IsError(Range("C2")) Then
  10.        更正3
  11.     End If
  12.     If IsError(Range("C2")) Then
  13.        MsgBox "原始的資料有誤"
  14.     End If
  15.   End If
  16. End Sub

  17. Sub 更正1()
  18.     MsgBox "更正1"
  19. End Sub
  20.    
  21. Sub 更正2()
  22.     MsgBox "更正2"
  23. End Sub
  24.    
  25. Sub 更正3()
  26.     MsgBox "更正3"
  27. End Sub
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)