Microsoft Excel

Herbers Excel/VBA-Archiv

Hallo,

Betrifft: Hallo, von: sahar
Geschrieben am: 14.11.2014 19:42:25

bekomme diese Fehlermeldung beim debuggen angezeigt 'Laufzeitfehler 32809' Anwedungs- oder Objektdefinierterfehler. Es handelt sich um eine Schleife und hier ein Ausschnitt: Danke im voraus!!!

Sub Schleife()

'Variablen
    Dim xVal, fxVal, fAxVal, xn1Val, helpVal As Double
        helpVal = 1#
        
    Dim rowIndex, colIndex As Integer
        rowIndex = 2
        colIndex = 1
    
    
    'Calculation Starten
    Sheets(1).Activate
    
    Do While helpVal <> 1#
        xVal = Cells(rowIndex, colIndex)
        fxVal = fx(xVal)
        fAxVal = fAx(xVal)
        xn1Val = xn1(xVal, fxVal, fAxVal)
        Cells(rowIndex, colIndex + 1) = fxVal
        Cells(rowIndex, colIndex + 2) = fAxVal
        Cells(rowIndex, colIndex + 3) = xn1Val
        rowIndex = rowIndex + 1
        helpVal = fxVal
        
        If helpVal <= 0.0000000001 Then
            helpVal = 0#
        Else
            Cells(rowIndex, colIndex) = xn1Val
        End If
    Loop
    
End Sub

  

Betrifft: AW: Hallo, von: Crazy Tom
Geschrieben am: 14.11.2014 20:18:33

Hallo

also bevor bei mir ein Laufzeitfehler kommt
wird hier

fxVal = fx(xVal)

schon nach Sub oder Funktion fx gefragt

MfG Tom


  

Betrifft: AW: Hallo, von: sahar
Geschrieben am: 14.11.2014 20:26:54

Ich habe aber mehrere Funktionen und die habe ich unten eingegeben. Was aber noch erwähnen muss ist, dass ich Excel 2003 habe. Macht das was aus?

Function fx(ByVal x As Double) As Double
    
    'Calculate f(x) = x^2 - 2
    fx = x ^ 2 - 2
    
    
End Function
Function fAx(ByVal x As Double) As Double
    
    'calculate fA(x) = 2 * f(x)
    fAx = 2 * x
    
End Function
Function xn1(ByVal x As Double, ByVal fx As Double, ByVal fAx As Double) As Double
    
    'calculate xn1 = x - (f(x) / fA(x)
    xn1 = x - (fx / fAx)
    
End Function



  

Betrifft: AW: Hallo, von: Crazy Tom
Geschrieben am: 14.11.2014 20:44:31

Hallo

und was soll da berechnet werden?

aus deinem Code

helpVal = 1#
'...
'...
Do While helpVal <> 1#

da ist die Schleife schon beendet bevor sie los geht

MfG Tom


  

Betrifft: AW: Hallo, von: sahar
Geschrieben am: 14.11.2014 21:03:15

es sollen funktionen berechnet werden wie du entnehmen kannst. ziel der schleife ist bei der nullstelle aufzuhören zu durchlaufen. mein startwert ist variabel und ich möchte dadurch erreichen, dass ich in meinem commanbutton jegliche variabel eingebe und diese trotzdem durchläuft.


  

Betrifft: AW: Hallo, von: Crazy Tom
Geschrieben am: 14.11.2014 21:07:49

Hallo

mag ja sein, dass das dein Ziel ist

du setzt den Startwert der Variablen helpVal am Anfang auf 1
und dann fängst du die Schleife an mit:
mach solange die Variable helpVal was anderes als 1 ist
da die Variable aber schon 1 ist wird die Schleife sofort abgebrochen

MfG Tom


  

Betrifft: AW: Hallo, von: sahar
Geschrieben am: 14.11.2014 21:13:29

Danke für deine Mühe aber ich habe das auch ausprobiert, jedoch bricht es trotzdem beim Sheets(1).Activate ab.

MfG Sahar


  

Betrifft: Schluss mit Hallo: Dann ist das versteckt oder ... von: Luc:-?
Geschrieben am: 14.11.2014 22:18:51

…ein DiagrammBlatt oder es passiert zuvor in einem nicht gezeigten Teil des Pgms irgendetwas Verrücktes, Sahar;
wer soll das erraten ohne konkreten Bezug…
Außerdem deklariert man Zeilen-/SpaltenIndizes besser As Long, auch wenn das hier ja nicht die F-Ursache ist.
Gruß, Luc :-?


  

Betrifft: Jeep ... von: Matthias L
Geschrieben am: 14.11.2014 22:28:21

Hi Luc

Hatte es auch schon nachgestellt

Bei mir bleibt der Code nicht hängen bei Sheets(1).Activate
Weil es wie Du auch schreibst ein Worksheet ist.
Mehr konnte ich aber auch nicht aus der Frage herusfiltern.

Sheets(1).Activate ist sowieso nicht so mein Ding.
Ich nehme lieber den CodeNamen der Tabelle

Gruß Matthias


  

Betrifft: Sorry ... ;-) von: Matthias L
Geschrieben am: 14.11.2014 22:34:42

Hi

 C
15herusfiltern
16herausfiltern

Formeln der Tabelle
ZelleFormel
C16=WECHSELN(C15;"u";"au")


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

Gruß Matthias


  

Betrifft: AW: Jeep ... von: sahar
Geschrieben am: 14.11.2014 22:35:08

@Michael: der Fehler wird auch nicht mehr angezeigt.

@ Luc:-?: konkreten Bezug, ich kann dir meinen Skript Uploaden dann kannst du ja evtl einen Bezug finden??? Beim debuggen durchläuft es aber es verändert nichts an meiner Tabelle


  

Betrifft: Gruß an Michael auch von mir ;-) ... owT von: Matthias L
Geschrieben am: 14.11.2014 23:01:58




  

Betrifft: danke, Matthias, und zurück! owT von: Michael
Geschrieben am: 15.11.2014 00:41:34