Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Problem mit Makro

Forumthread: Problem mit Makro

Problem mit Makro
Sebastian
Hallo zusammen,
ich habe ein kleines Problem mit meinem Makro. Ich habe lasse darin eine Formel berechnen, wenn diese jedoch duch 0 geteilt wird, weil besipsielsweise kein Wert in der entsprechenden Zelle steht bekomme ich eine Fehlermeldung. Wie kann ich das Makro nun umschreiben, damit dieser Fehler nicht weiter auftritt.
Anbei das Makro und eine Beispieldatei:
Private Sub ToggleButton1_Click()
Dim TB As ToggleButton
Set TB = ToggleButton1
If TB.Value = False Then
TB.Caption = "Prov.-Quote eingeben"
Tabelle2.Range("A1500") = 1
Else
TB.Caption = "Prov. absolut eingeben"
Tabelle2.Range("A1500") = 0
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Tabelle2.Range("A1500") = "1" Then
Tabelle2.Range("C5") = Tabelle1.Range("c5") * Tabelle2.Range("c6")
Tabelle2.Range("D5") = Tabelle1.Range("d5") * Tabelle2.Range("D6")
Else
Tabelle2.Range("c6") = Tabelle2.Range("c5") / Tabelle1.Range("c5")
Tabelle2.Range("D6") = Tabelle2.Range("D5") / Tabelle1.Range("D5")
End If
End Sub

https://www.herber.de/bbs/user/71984.xls
Vielen Dank vorab für eure Hilfe
Sebastian
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Problem mit Makro
20.10.2010 12:38:34
Rudi
Hallo,
damit dieser Fehler nicht weiter auftritt.

und was soll statt dessen passieren?
...
Else
Tabelle2.Range("c6") = Tabelle2.Range("c5") / Iif(Tabelle1.Range("c5")=0,1,Tabelle1.Range("c5")) _
Tabelle2.Range("D6") = Tabelle2.Range("D5") / IIF(Tabelle1.Range("D5")=0,1,Tabelle1.Range("D5"))
...

Gruß
Rudi
Anzeige
AW: Problem mit Makro
20.10.2010 12:41:11
Sebastian
Hi,
ansonsten soll die Zelle die berechnet wird 0 sein.
Viele Grüße
Sebastian
AW: Problem mit Makro
20.10.2010 13:06:38
Rudi
Hallo,
dann eben z.B.
Tabelle2.Range("c6") = IIf(Tabelle1.Range("c5")=0, 0, Tabelle2.Range("c5") / Tabelle1.Range("c5"))
Gruß
Rudi
AW: Problem mit Makro
20.10.2010 12:50:07
Klaus-Dieter
Hallo Sebastian,
versuche es einmal so:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim intSpalte As Integer
For intSpalte = 3 To 7
If Tabelle2.Range("A1500") = 1 Then
Tabelle2.Cells(5, intSpalte) = Tabelle1.Cells(5, intSpalte) * Tabelle2.Cells(6,  _
intSpalte)
Else
If Tabelle1.Cells(5, intSpalte) > 0 Then
Tabelle2.Cells(6, intSpalte) = Tabelle2.Cells(5, intSpalte) / Tabelle1.Cells(5,  _
intSpalte)
Else
Tabelle2.Cells(6, intSpalte) = 0
End If
End If
Next intSpalte
End Sub
Der Quelltext ist nicht getestet!
Viele Grüße Klaus-Dieter

Online-Excel
Anzeige
AW: Problem mit Makro
20.10.2010 13:29:53
Sebastian
Super, es klappt.
Vielen Dank.
Sebastian
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige