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

mal funktionierts, mal nicht...

mal funktionierts, mal nicht...
20.08.2007 12:00:27
Hubitz
Hallo Forum,
jaja ich weiss, der Betreff ist äußerst aussagekräftig, aber was besseres ist mir am Montag "morgen" nicht eingefallen.
Folgendes Problem:
Das folgende Makro ist voll funktionsfähig, läuft und überbringt mir den/die gesuchten Werte aus meiner Tabelle.
ABER:
regelmäßig zeigt mit das Makro eine #WERT! Fehlermeldung an. wenn ich nun in die Makro-Zelle doppel klicke und ENTER drücke, ist alles wieder gut...
WANN tritt der Fehler auf fragt Ihr Euch? naja, meistens nur wenn ich von einem Tabellenblatt in ein anderes wechsele. durch die application.volatile sollte das Makro ja eigentlich auf veränderugen reagieren...
Fällt Euch dazu was ein?
Hier das makro:

Function Getriebeauswahl(Übersetzung As Integer, Leistung As Double) As Double
' Makro ermittelt die Baugröße und die Stufenzahl
' anhand der Übersetzung und Nennleistung. Werte aus Tabelle "Nennleistung P2N"
Dim Bereich1 As Integer         ' Zeilengrenze oben
Dim Bereich2 As Integer         ' Zeilengrenze unten
Dim x As Double                 ' Laufzeitstring Zeile
Dim y As Integer                ' Laufzeitstring Spalte
Dim i As Integer                ' Laufzeitvariable Spalte
Dim N As Integer                ' Laufzeitvariable Zeile
Dim Getriebetyp As Integer      ' Auswahl Stirnradgetriebe / Kegelstirnrad
Application.Volatile
Getriebetyp = Worksheets("Getriebe").[U9].Value
If Getriebetyp = "1" Then   'Stirnradgetriebe
Bereich1 = "94"
Bereich2 = "131"
Else                        ' Kegelstirnradgetriebe
Bereich1 = "49"
Bereich2 = "87"
End If
'#######################  Auswahl der Übersetzung  ####################
For i = Bereich1 To Bereich2
x = Worksheets("Getriebe").Cells(i, 1).Value
' x = Zelleninhalt aus Spalte 1 (Übersetzung) Zeile "Bereich1 -  _
Bereich2"
Do While Übersetzung = y      ' Durchlauf der Zeile i Spaltenweise
If y  0 Then               ' Abfrage auf leeren Zelleninhalt
'#######################  Auswahl der Stufenzahl  ###########################
Worksheets("Getriebe").Cells(i, N).Activate     'Aktivierung der Zelle zum Auslesen  _
der Schriftfarbe
If ActiveCell.Font.ColorIndex = 1 Then          ' Schriftfarbe SCHWARZ
Sheets("Getriebe").[E29].Value = "2"
ElseIf ActiveCell.Font.ColorIndex = 3 Then      ' Schriftfarbe ROT
Sheets("Getriebe").[E29].Value = "3"
ElseIf ActiveCell.Font.ColorIndex = 5 Then      ' Schriftfarbe BLAU
Sheets("Getriebe").[E29].Value = "4"
End If
Getriebeauswahl = Worksheets("Getriebe").Cells(48, N).Value     ' Auslesen der  _
Getriebebaugröße aus Zeile 48 Spalte N
ElseIf y = 0 Then
GoTo step
End If
Exit Function
Loop
step:
Next N
End Function


über Ideen freut sich
Hubitz

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mal funktionierts, mal nicht...
20.08.2007 21:48:06
Gerd
Hallo Hubitz,
Bedeutung des Fehlerwertes #WERT!
Der Fehlerwert #WERT! wird angezeigt, wenn ein falscher Argument- oder Operandentyp verwendet wurde oder wenn die Formel durch AutoKorrektur für Formeln nicht korrigiert werden kann.
Mögliche Ursache7 Korrekturvorschlag
Sie haben Text an einer Stelle der Formel eingegeben, an der eine Zahl oder ein Wahrheitswert erforderlich ist, z. B. WAHR oder FALSCH. Microsoft Excel kann den Text nicht in den richtigen Datentyp übersetzen. Stellen Sie sicher, dass in der Formel oder Funktion der erforderliche Operand bzw. das erforderliche Argument verwendet wird und dass die Zellen, auf die sich die Formel bezieht, gültige Werte enthalten. Enthält beispielsweise die Zelle A5 eine Zahl und die Zelle A6 den Text "Nicht verfügbar", gibt die Formel =A5+A6 den Fehlerwert #WERT! zurück. Um die beiden Werte zu addieren, verwenden Sie in der Formel die Tabellenfunktion SUMME (die Funktion SUMME ignoriert Text):
=SUMME(A5:A6)
Aus der Excel_Hilfe, erster Fall.
Gruß Gerd
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige