Wie kann ich eine wiederverwendbare Funktion in Excel 2007 erstellen?

3297
C. Ross

Wie kann ich eine wieder verwendbare Funktion / Formel erstellen, die ich in Formeln in einer Kalkulationstabelle verwenden kann? Insbesondere brauche ich eine sehr einfache DateDiff-Formel und möchte diese Funktion kapseln:

=(((HOUR(B3) * 60) * 60) + (MINUTE(B3) * 60) + SECOND(B3)) - (((HOUR(A3) * 60) * 60) + (MINUTE(A3) * 60) + SECOND(A3)) 

(Danke an Phil Winstanley )

4

2 Antworten auf die Frage

6
Lance Roberts

Dieser Link beschreibt vollständig, wie das geht ... Die Anweisungen wurden unten aufgelistet:

  1. Öffnen Sie eine neue Arbeitsmappe.
  2. Holen Sie sich in VBA (Drücken Sie Alt + F11)
  3. Ein neues Modul einfügen (Insert> Module)
  4. Geben Sie die Excel User Defined Function (UDF) in VBA ein
  5. Raus aus VBA (Drücke Alt + Q)
  6. Verwenden Sie die Funktionen (im Arbeitsblatt) - Sie werden im Dialogfeld "Funktion einfügen" (Umschalt + F3) in der Kategorie "Benutzerdefiniert" angezeigt.

Es ist für Excel-2003, aber der Prozess ist der gleiche

Sie erstellen ein VBA-Modul mit einer Funktion, sagen Sie NEUFunktion,
und referenzieren Sie es in der Zelle =NEWfunction("A1").

Dies wird als benutzerdefinierte Funktion von UDF bezeichnet. Lance Roberts vor 14 Jahren 0
Klingt perfekt, probiere es jetzt aus. C. Ross vor 14 Jahren 0
2
JDunkerley

Während eine VBA-UDF wahrscheinlich der beste Weg ist. Die Formel, die Sie haben, könnte vereinfacht werden

=MOD((B3-A3)*86400,86400) 

aufgrund der Art und Weise, in der Datum / Uhrzeit in Excel doppelt gespeichert wird