Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
392to396
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
392to396
392to396
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Problem mit Formel

Problem mit Formel
03.03.2004 20:32:11
TinoB
guten abend leute,
sorry das die seite jetzt soweit nach rechts geht, aber ich wollte die komplette formel eintragen. ich habe hier in der Case 20 anweisung en problem. immer wenn ich den button zum berechnen betätige kommt der Laufzeitfehler 13. hab nichts konkretes darüber gefunden. könnte mir jemand helfen? ist die formel zu lang? weil bis zum punkt (Cells(rng.Row, 18) funktioniert das ganze noch. ich habe dann auch auf eine andere zelle verwiesen, dachte es liegt daran. keine chance. was kann ich tun?
Danke
Tino

Private Sub CommandButton1_Click()
Dim rng As Range, LZ As Integer
LZ = Range("G65536").End(xlUp).Row
For Each rng In Range(Cells(20, 7), Cells(LZ, 7))
Select Case rng
Case 10:
If Cells(rng.Row, 23) > 900 Then Cells(rng.Row, 25) = ((Cells(rng.Row, 11) + Cells(rng.Row, 12)) * 2 * Cells(rng.Row, 23) / 1000000) * Cells(rng.Row, 5) Else Cells(rng.Row, 25) = 0
If Cells(rng.Row, 23) <= 900 Then Cells(rng.Row, 26) = ((Cells(rng.Row, 11) + Cells(rng.Row, 12)) * 2 * Cells(rng.Row, 23) / 1000000) * Cells(rng.Row, 5) Else Cells(rng.Row, 26) = 0
Case 20: Cells(rng.Row, 26) = (((Cells(rng.Row, 11) + Cells(rng.Row, 12) * 2) / 1000) * ((Cells(rng.Row, 22) * Cells(rng.Row, 27) * (Cells(rng.Row, 18) + Cells(rng.Row, 12)) / 180) / 1000) + (Cells(rng.Row, 15) + Cells(rng.Row, 16)) / 1000) * Cells(rng.Row, 5)
End Select
Next rng
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Lösung für alle die's interessiert
03.03.2004 22:14:24
TinoB
hi,
da ich annehme, dass die formel zu lang ist, hab ich diese geteilt und in einer zelle zwischen gespeichert.
Grüße
Case 20:
Cells(rng.Row, 30) = 2 * (Cells(rng.Row, 11) + Cells(rng.Row, 12)) / 1000
Cells(rng.Row, 31) = (Cells(rng.Row, 22) * 3.1415927 * ((Cells(rng.Row, 18) + Cells(rng.Row, 12))) / 180) / 1000 + Cells(rng.Row, 15) / 1000 + Cells(rng.Row, 16) / 1000
Cells(rng.Row, 26) = Cells(rng.Row, 30) * Cells(rng.Row, 31) * Cells(rng.Row, 5)

AW: Lösung für alle die's interessiert
03.03.2004 22:23:51
Christoph
Hi Tino,
ich habe selbst kein Excel97, daher konnte ich dein Problem nicht nachvollziehen.
Unter XP funktioniert deine Makro-Anweisung.
Nichtsdestotrotz noch ein Tip:
du kannst alleine der Übersichtlichkeit Willen - nicht nur hier im Forum sondern
insbesondere in deinem VBA-Editor - solch lange Anweisungen mit einem "Underscore" splitten:
Bsp:

Sub Test()
Select Case rng
Case 20:
Cells(rng.Row, 26) = _
(((Cells(rng.Row, 11) + Cells(rng.Row, 12) * 2) / 1000) * _
((Cells(rng.Row, 22) * Cells(rng.Row, 27) * _
(Cells(rng.Row, 18) + Cells(rng.Row, 12)) / 180) / 1000) + _
(Cells(rng.Row, 15) + Cells(rng.Row, 16)) / 1000) * Cells(rng.Row, 5)
End Select
End Sub

Gruß
Christoph
Anzeige
danke (o.T.)
04.03.2004 16:20:27
TinoB
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige