Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Ergebnis 0
#1
Hallo liebe Experten,


mit Hilfe dieses Forums habe ich eine Funktion gebaut, die mir zeigt, wieviel Tage eines Zeitraums A in einem Zeitraum B liegen. Mit der Zeile "If ((Teilanfang > Teilende) ..." möchte ich, dass die Funktion bei verkehrter Eingabe von Teilanfang/Feilende bzw. Zeitraumanfang/Zeitraumende 0 ausgibt.

Das funktioniert nicht.

Was habe ich falsch gemacht?



Code:
Public Function ZEITTEIL(Teilanfang As Single, Teilende As Single, Zeitraumanfang As Single, Zeitraumende As Single) As Single       
        If ((Teilanfang > Teilende) Or (Zeitraumanfang > Zeitraumende)) Then ZEITTEIL = 0           
        If ((Teilanfang <= Zeitraumanfang) And (Teilende <= Zeitraumanfang)) Or ((Teilanfang >= Zeitraumende) And (Teilende >= Zeitraumende)) Then
        ZEITTEIL = 0   
      
  Else 

    Dim speicher(4) As Date
    Dim i As Byte
    Dim merker As Byte
    merker = 0
    
    speicher(0) = DateDiff("d", Teilanfang, Teilende)
    speicher(1) = DateDiff("d", Teilanfang, Zeitraumende)
    speicher(2) = DateDiff("d", Zeitraumanfang, Teilende)
    speicher(3) = DateDiff("d", Zeitraumanfang, Zeitraumende)
    
    For i = 1 To 3
        If speicher(merker) > speicher(i) Then
         merker = i
        End If
    Next i
    ZEITTEIL = speicher(merker)
  End If
 
End Function

Vielen Dank im Voraus

Excelbeginner
Antworten Top
#2
Hallo, :19:

Kommentare in der Datei: :21:

.xlsb   Funktion_Tage_zwischen_Daten.xlsb (Größe: 14,94 KB / Downloads: 8)
________
Servus
Case
Antworten Top
#3
Thumbs Up 
Hallo Case,

allerbesten Dank, auch für die Erläuterung, die es gut verständlich macht.

Funktioniert tadellos!!

Excelbeginner
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste