Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Problem mit einer Formel

Frage Microsoft Microsoft Office

Mitglied: Uesch

Uesch (Level 1) - Jetzt verbinden

10.01.2007, aktualisiert 11.01.2007, 4313 Aufrufe, 5 Kommentare

Hi zusammen!

Ich suche eine Formel.
Folgende Aufgabenstellung:

Erzeugen sie ein Textfeld, in dem folgender Text erscheinen soll:
Wenn der Wert im Feld "Verleihdatum" länger als 30 Tage zurückliegt, soll erscheinen "seit über 30 Tagen fällig"; liegt der Wert mehr als 60 Tage zurück, soll erscheinen "seit x Tagen überfällig".
In allen anderen Fällen soll das Feld leer bleiben!

Also meine zusammengebastelte Formel lautet wie folgt:
=Wenn(Datum()-[Verleihdatum]>30;Wenn(Datum()-[Verleihdatum]>60;"überfällig seit x Tagen";"überfällig seit 30 Tagen");"")

Soweit so gut! Nur soll anstatt das x eben dann der genaue Abstand der Tage vom Verleihdatum bis zum heutigen Datum erscheinen....
Kann mir dabei jemand nen Denkanstoß verpassen? Die Lösung wäre natürlich auch nicht schlecht

MfG, Uesch


[Edit Biber] Im Juni 2008 immer noch ohne Feedback. Geschlossen. [/Edit]
Mitglied: vip3234
10.01.2007 um 22:09 Uhr
Hallo,

also ich versteh dein Problem nicht ganz; Was genau meinst du mit "anstatt x soll dann der genaue Abstand der Tage stehen " ? In welcher Progammiersprache soll das ganze denn ablaufen ?

Vip
Bitte warten ..
Mitglied: vip3234
10.01.2007 um 22:44 Uhr
In Visual Basic NET sieht das ganze so aus:

Programmcode start ---------------------------------------
'Variable für das Verleihdatum als Datumstyp definieren; Variable für die Ausleihdauer
'als Integer (ganze Zahlen) definieren
Dim verleihdatum As Date
Dim ausleihdauer As Integer

'Der Wert der Variable für das Verleihdatum wird gleich einem Textfeld für die Eingabe des
'Ausleihdatums gesetzt, alternativ auch aus einer Datenbank gelesen etc.
verleihdatum = txtverleihdatum.Text

'Die Differenz zwischen dem Ausleihdatum und der heutigen Datum wird berechnet und die
'Zeitdauer in ganzen Tagen angegeben
ausleihdauer = DateDiff(DateInterval.Day, verleihdatum, System.DateTime.Today)


'Sollte die Ausleihdauer größer 30 Tage sein bekommt das Textfeld txtnachricht einen Wert.
'Ist das nicht der Fall wird das Feld geleert.
If ausleihdauer > 30 Then
txtnachricht.Text = "seit über 30 Tagen fällig"
Else
txtnachricht.Text = ""
End If

'Ist die Ausleihdauer größer als 60 Tage so bekommt das Textfeld einen anderen Wert;
'im anderen Wert kommt die Variable "ausleihdauer" wieder vor und gibt somit den Wert x an
'seit wie vielen Tagen etwas ausgeliehen ist.
If ausleihdauer > 60 Then
txtnachricht.Text = "seit " & ausleihdauer & " Tagen überfällig"
End If

' Das Textfeld hier zu leeren ist nicht nötig, da die If-Anweisung sowieso nur abläuft wenn der Wert
' >30. Andernfalls ist das Textfeld sowieso schon von der oberen If-Anweisung geleert worden

Programmcode ende ---------------------------------------

Alle Zeilen mit einem ` voraus werden von VB NET nicht gelesen, sind also lediglich Kommentare.

Falls benötigt kann ich das Programm auch per eMail zusenden.

VIp
Bitte warten ..
Mitglied: Biber
10.01.2007 um 23:19 Uhr
... oder, wenn Du ganze in die Formel oben pressen willst:

=Wenn(Datum()-[Verleihdatum]>30;Wenn(Datum()-[Verleihdatum]>60;"überfällig seit "& Datum()-[Verleihdatum] & " Tagen";"überfällig seit mehr als 30 Tagen");"")

... wobei ich vip3234's Ansatz auf jeden Fall vorziehen würde.
Denn Einzeiler können immer vergleichsweise wenig Kommentarzeilen verkraften und sind deshalb naturbedingt etwas schlecht les- und wartbar.

Gruß
Biber
Bitte warten ..
Mitglied: bastla
11.01.2007 um 00:12 Uhr
@vip3234

... und wenn Du schon dabei bist, Nachhilfe zu geben, könntest Du vielleich noch ein "Select Case" unterbringen ...

Grüße
bastla
Bitte warten ..
Mitglied: vip3234
11.01.2007 um 00:19 Uhr
@bastla

könnte man. Theoretisch müsste man auch abfragen ob im textfeld txtverleihdatum.text auch wirklich ein Datum drin steht, damits keinen Typenkonflikt gibt.

Von daher kann man das immer noch erweitern. Aber so ist es eben recht einfach und zweckmäßig. Allerdings ist ja auch noch nicht klar, wie das ganze programmiert werden soll oder ob das nur ein Gedankenexperiment ist etc....
Bitte warten ..
Ähnliche Inhalte
Windows Server
Problem mit Webdav und Webserver IIS (3)

Frage von JUJUS31 zum Thema Windows Server ...

Netzwerkgrundlagen
Multi NAT Problem (9)

Frage von Gr33n93 zum Thema Netzwerkgrundlagen ...

Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (17)

Frage von montylein1981 zum Thema Windows Server ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst ZIP-Archive nach Dateien durchsuchen und Pfade ausgeben (33)

Frage von evinben zum Thema Batch & Shell ...

Router & Routing
Routingproblem in Homerouter-Kaskade mit Raspi (20)

Frage von Oldschool zum Thema Router & Routing ...

Server
Freenas schlechte Schreib Performance bei NFS (16)

Frage von janosch12 zum Thema Server ...

C und C++
Methode multiple return values (8)

Frage von mayho33 zum Thema C und C ...