Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1136to1140
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
Inhaltsverzeichnis

Funktion wird ständig abgearbeitet

Funktion wird ständig abgearbeitet
Fettertiger
Hallo werte Experten,
in einem Tool das von Usern mit unterschiedlichen Excel-und Sprachversionen verwendet wird, _
rufe ich zum Umrechnen von einer Masseinheit in eine andere folgende Funktion auf:

Function XConvert(Old_number As Long, from_unit As String, to_Unit As String)
Dim Conv_Factor As Double
Dim from_col As Integer
Dim to_row As Integer
from_col = Application.WorksheetFunction.Match(from_unit, X_Convert.Range("a3:F3"), 0)
to_row = Application.WorksheetFunction.Match(to_Unit, X_Convert.Range("c1:c99"), 0)
Conv_Factor = X_Convert.Cells(to_row, from_col).Value + 0
XConvert = Old_number * Conv_Factor
End Function

Die Tabelle XConvert findet Ihr hier: https://www.herber.de/bbs/user/68052.xls
Die eingebaute Funktion aus dem Analysis tool pack (convert) kann ich aufgrund der unterschiedlichen Sprachversionen leider nicht verwenden. Die Funktion funktioniert soweit ganz gut. Ärgerlich ist nur, dass die Funktion automatisch aufgerufen wird, sobald meine anderen Makros in irgendeiner Zelle einen Wert oder eine Formel reinschreiben. Dies zieht die Performance meines Tools gnadenlos runter.
Ich könnte natürlich noch einen weiteren parameter mitgeben, sowas in der art wie
gewollter_aufruf = true
wobei ein false direkt zum ende der Funktion führen würde.
Gibt es hier eine elegantere Möglichkeit?
Danke für Euer schnelles Feedback
Gruss Fettertiger

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Funktion wird ständig abgearbeitet
16.02.2010 21:16:26
Stefan
Hallo Fettertiger
Mit
Target.Address
kannst du bestimmen das deine Funktion nur dann startet, wenn eine bestimmte Zelle
gewählt wurde.
Gruß, Stefan
AW: Funktion wird ständig abgearbeitet
16.02.2010 21:17:42
Andreas
Nein, sobald eine Zelle geändert wird, auf die die Funktion Bezug nimmt, wird die Funktion logischerweise neu berechnet.
Du kannst dir höchstens eine Lösung überlegen, die Kopieren und Werte einfügen nutzt...
Gruß,
Andreas
AW: Funktion wird ständig abgearbeitet
16.02.2010 22:18:10
Uduuh
Hallo,
Setze in deinem Code eine Boolsche Variable:
  Public blnCode As Boolean
Function XConvert(Old_number As Long, from_unit As String, to_Unit As String)
Dim Conv_Factor As Double
Dim from_col As Integer
Dim to_row As Integer
If Not blnCode Then
from_col = Application.WorksheetFunction.Match(from_unit, X_Convert.Range("a3:F3"), 0)
to_row = Application.WorksheetFunction.Match(to_Unit, X_Convert.Range("c1:c99"), 0)
Conv_Factor = X_Convert.Cells(to_row, from_col).Value + 0
XConvert = Old_number * Conv_Factor
End If
End Function
Sub meinCode()
blnCode = True
'DeinCode
blnCode = False
End Sub
Gruß aus’m Pott
Udo

Anzeige
AW: Funktion wird ständig abgearbeitet
19.02.2010 10:56:50
Fettertiger
Hallo zusammen,
vielen Dank für Eure schnelle Hilfe. Leider nützt die Lösung in meinem Fall nichts, denn der Aufruf der Funktion erfolg nicht asu einem makro heraus, sondern als Formel im Arbeitsblatt. Ich hatte mich hier wohl etwas blöd ausgedrückt.
Sorry
Gruss
Fettertiger

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige