Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
704to708
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
704to708
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

laufzeitfehler '6' überlauf

laufzeitfehler '6' überlauf
07.12.2005 18:55:45
dimi
servus,habe folgendes problem:
im untenstehenden code kriege ich immer laufzeitfehler 13 typen unverträglich für zeile 39 und laufzeitfehler 6 für zeile 54. in einem anderen modul läuft gleiche schleife (allein ohne andere drumherum) einwandfrei. bin schon am verzweifeln
1Option Explicit
2Option Base 1
3
4

Sub stuetze()
5
6                                        'Deklaration der Variablen
7Dim DehnungUnten As Double
8Dim DehnungOben As Double
9Dim Radius As Double
10Dim Betondruckfestigkeit As Double
11Dim Betonzugfestigkeit As Double
12Dim EModulBeton As Double
13Dim ResZugkraft As Double
14Dim ResDruckkraft As Double
15Dim ResMoment As Double
16Dim Elementhoehe As Double
17Dim ElementAnzahl As Integer
18Dim NKraft As Double
19Dim DblSumPlusPos As Double
20Dim DblSumPlusNeg As Double
21Dim Laenge As Double
22Dim NulldurchgangvonUnten As Double
23Dim i
24
25ElementAnzahl = Cells(2, 2)
26                              'Deklaration der Datenfelder mit 1000 spalten
27Dim Dehnung(1000) As Double
28Dim Betonspannung(1000) As Double
29Dim Rissoeffnung(1000) As Double
30Dim KraftimElementI(1000) As Double
31Dim MomentausElementI(1000) As Double
32Dim Risstiefe(1000) As Double
33Dim QuerschnittsFlaeche(1000) As Double
34Dim SpannungFasern(1000) As Double
35
36
37Radius = Cells(2, 1)
38Betondruckfestigkeit = Cells(2, 7)
39Betonzugfestigkeit = Cells(2, 8)
40EModulBeton = Cells(2, 9)
41
42
43                                        'Berechnung Elementhöhe
44
45Elementhoehe = 2 * Radius / ElementAnzahl
46
47
48    For NulldurchgangvonUnten = 0 To 2 * Radius
49
50        For DehnungUnten = 0 To -0.01 Step -0.001
51
52            For i = 1 To 100
53
54                Dehnung(i) = DehnungUnten - ((ElementAnzahl - i) * Elementhoehe * DehnungUnten) / NulldurchgangvonUnten
55            Next
56        Next
57    Next
58
59End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: laufzeitfehler '6' überlauf
07.12.2005 19:10:23
Andi
Hi,
der Überlauf in Zeile 54 ist schnell erklärt:
beim ersten Durchlauf der For-Schleife ist die Variable NulldurchgangvonUnten 0, und in Zeile 54 teilst Du durch diese Variable; Division durch 0 geht aber nicht, und der Debugger formuliert dieses nicht gehen eben als Überlauf (weil Division durch 0 streng mathematisch eben doch geht, aber Unendlich ergibt)
Zum Fehler in Zeile 39:
was steht denn in Zelle H2? Passt das mit dem Typ double zusammen?
Versuch vielleicht mal, die Zelle komplett mit Tabellenblatt zu referenzieren:
39Betonzugfestigkeit = Worksheets("Tabelle2").Cells(2, 8).value
Tabellenname musst Du natürlich noch anpassen.
Schönen Gruß,
Andi
Anzeige
AW: laufzeitfehler '6' überlauf
09.12.2005 14:40:52
dimi
sorry wegen der verspäteten antwort, konnte erst jetzt die rückmeldungen einsehen. andi, du hattest recht, der überlauf kamm wegen teilens durch 0. habe 0 durch 0.001 ersetzt, jetzt ist komischerweise auch der fehler in zeile 39 wie weggeblasen. falls von interesse, in zelle H2 steht eine ganze Zahl(z.B 10, 12, usw.). vielen dank.
Gern geschehen... (mt)
09.12.2005 17:02:40
Andi
Hi,
schön, dass es jetz geht.
Sorry für den Anpfiff zwengs der Rückmeldung; leider gibt es halt Leute sich hier nur eine Dienstleistung abholen wollen und partout zu keierlei Rückmeldung bereit sind.
Aber dass nicht jeder ständig vorm Rechner sitzt is auch klar, in diesem Sinne: nix für ungut
Schönen Gruß,
Andi
Anzeige
AW: laufzeitfehler '6' überlauf
07.12.2005 20:40:29
Reinhard
Hi dimi,
schreib
msgbox nametype(Cells(2, 7))
irgendwo vor zeile 39, (kann auch typename heissen)
Gruß
Reinhard
ps:Das Forum lebt auch von Rückmeldungen
AW: laufzeitfehler '6' überlauf
09.12.2005 14:46:20
dimi
hallo reinhard, habe "msgbox nametype(Cells(2, 7))" genau vor zeile 39 eingefügt, aber beim ausführen im tabellenblattm bekomme ich eine msgbox mit der meldung Range,und sonst tut sich nichts. meintest du vielleicht Cells(2,8) statt(2,7)?
sorry wegen der späten antwort, war gestern den ganzen tag verhindert.
ich nehme mal an...
08.12.2005 17:07:15
Andi
... das Problem ist gelöst?
Rückmeldung wäre nett gewesen... :-(

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige