Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Keine Aktivierung der MsgBox bei #Wert! und #NV


Betrifft: Keine Aktivierung der MsgBox bei #Wert! und #NV von: Jan
Geschrieben am: 10.09.2019 09:35:53

Guten Morgen liebe Excel-Gemeinde,

Ich habe einen Wert in A1, der mir über einen SVERWEIS ausgegeben wird. Der SVERWEIS bezieht sich dabei auf einen Wertebereich in einem anderen Tabellenblatt. Falls ein Parameter in diesem Bereich dabei einen gewissen Wert überschreitet, wird "-" ausgegeben und A1 zeigt "-" an.
Anschließend erscheint eine MsgBox, die durch "-" hervorgerufen wird.
Das Problem ist nun, dass die MsgBox auch dann erscheint, wenn durch falsche Einstellung anderer Parameter in A1 "#Wert!" oder "#NV" ausgegeben wird.

Kann man in VBA angeben, dass #Wert! und #NV ignoriert werden und somit die MsgBox nur bei "-" aktiviert wird?

Vielen Dank im Voraus.
LG Jan

  

Betrifft: AW: Keine Aktivierung der MsgBox bei #Wert! und #NV von: 1712181.html
Geschrieben am: 10.09.2019 09:40:44

Hallo Jan,

wie sieht denn dein Code zum Anzeigen der Messagebox aus?

Gruß Werner

  

Betrifft: AW: Keine Aktivierung der MsgBox bei #Wert! und #NV von: 1712219.html
Geschrieben am: 10.09.2019 11:39:16

Dim Msg1, Style1, Title1, Response1

'MsgBox deklarieren
Msg1 = " Lambda aus Diagramm ablesen!" + vbCrLf + "Bedienungsanleitung 'Rohrreibungszahl' befolgen!"
Style1 = vbOKOnly + vbExclamation
Title1 = "ACHTUNG"

If Worksheets("Auslegungsblatt").Range("A1") = "-" Then
'Meldung abbilden
Response1 = MsgBox(Msg1, Style1, Title1)
'Gehe zu Adresse
Application.Goto Reference:=Worksheets("Druckverlustberechnung").Range("A18"), scroll:=True

'Else: Worksheets("Auslegungsblatt").Range("A21") = "#N/A" And Worksheets("Auslegungsblatt").Range("A21") = "#WERT!"


End If


Die letzte Code-Zeile mit "else..." war ein kläglicher Versuch das zu unterbinden..

  

Betrifft: AW: Keine Aktivierung der MsgBox bei #Wert! und #NV von: 1712227.html
Geschrieben am: 10.09.2019 12:02:16

Hallo Jan,

so:

If Not IsError(Worksheets("Auslegungsblatt").Range("A1")) Then
      If Worksheets("Auslegungsblatt").Range("A1") = "-" Then
          'Meldung abbilden
          Response1 = MsgBox(Msg1, Style1, Title1)
          'Gehe zu Adresse
          Application.Goto Reference:=Worksheets("Druckverlustberechnung") _
          .Range("A18"), scroll:=True
      End If
  End If
Gruß Werner
  

Betrifft: AW: Keine Aktivierung der MsgBox bei #Wert! und #NV von: 1712250.html
Geschrieben am: 10.09.2019 13:21:58

Perfekt, vielen Dank Werner :)

  

Betrifft: Gerne u. Danke für die Rückmeldung. o.w.T. von: 1712269.html
Geschrieben am: 10.09.2019 14:34:17


  

Betrifft: AW: Keine Aktivierung der MsgBox bei #Wert! und #NV von: 1712231.html
Geschrieben am: 10.09.2019 12:08:58

Hallo Jan,

so geht's:

Dim Msg1 As String, Style1 As VbMsgBoxStyle, Title1 As String, Response1 As VbMsgBoxResult

'MsgBox deklarieren
Msg1 = " Lambda aus Diagramm ablesen!" + vbCrLf + "Bedienungsanleitung 'Rohrreibungszahl' befolgen!"
Style1 = vbOKOnly Or vbExclamation
Title1 = "ACHTUNG"

If Worksheets("Auslegungsblatt").Range("A1").Text = "-" Then
'Meldung abbilden
Response1 = MsgBox(Msg1, Style1, Title1)
'Gehe zu Adresse
Application.Goto Reference:=Worksheets("Druckverlustberechnung").Range("A18"), Scroll:=True

Gruß
Nepumuk

Beiträge aus dem Excel-Forum zum Thema "Keine Aktivierung der MsgBox bei #Wert! und #NV"