• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Tekst met datumberekening in 1 formule

Status
Niet open voor verdere reacties.

masala09

Gebruiker
Lid geworden
6 aug 2012
Berichten
886
Beste allemaal,


Heb excel 2007.

In B25 staat de datum van vandaag.

Ik heb als volgt nodig.

="uw factuur is= "&SOM(VANDAAG()-B25)" dagen oud.

Het eerste stuk voor de som formule werkt. Het tweede stuk niet.

Het eindresultaat moet dan zijn: Uw factuur is: 14 dagen oud.

Oja en dan nog leuker, maar dat kan volgens mij niet zomaar en zal denk ik met VBA moeten gebeuren, hoop het niet.

Bestaat er iets als een formule voor een laatste bezoekersdatum. Dit zodat je de huidige datum en tijd kan zien en de datum en tijd van het laatste bezoek.
 
Laatst bewerkt:
Code:
="uw factuur is = "&VANDAAG()-B25&" dagen oud."

Deze werkt denk ik beter

laatste bezoekersdatum:
Zonder voorbeeldje moet je denken aan zoiets:
=max(A1:A10)
Dit geeft de hoogste datum uit bereik A1:A10
 
Laatst bewerkt:
Perfect. Die code werkt inderdaad beter. Weer mijn dank.

Even over die bezoekersdatum.

Jij schrijft over de range A1:A10

Waar zet je dan welke datum in. Ik bedoel een datum van vandaag moet erin staan. Daarnaast moet er ook een datum verschijnen die vast wordt opgeslagen die telkens weer bij openen de datum van laatste bezoek aangeeft.

Heb jij daar een simpel voorbeeld van. Ik neem aan dat je dan refereert aan de datum van opslag van het bestand. Deze verandert ook iedere keer zodra je het bestand opnieuw opslaat en dus overschrijft, maar in deze moet dus zonder opslaan de datum van het laatste bezoek ook automatisch worden opgeslagen en worden getoond bij het opnieuw openen.
 
Plaats je xls bestandje dat verschaft meer duidelijkheid.
 
Hmmm betreft eigenlijk weer een ander bestandje die ik nog uiteen moet zetten.

Hierin komen nog meer zaken in te staan. Zoals iedere keer als ik een factuur wil maken dat er een opvolgend factuurnummer verschijnt en dat deze wordt opgeslagen en tevens die ik via hetzelfde bestand middels factuurnummer kan opvragen etc. Dat vergt een behoorlijk bestand die vermoed ik enkel via VBA is te verwezenlijken.

Dus eigenlijk zal er in hetzelfde bestand iedere keer apart gegevens moeten kunnen worden geladen vanuit een zij bestandje.

Ik moet overigens wel zeggen voor deze denk ik eerder aan een heel ander programma, maar ik vind het een uitdaging om zoiets zelf te kunnen opzetten met behulp van andere en daarnaast kun je het bestand aan je eigen eisen laten voldoen.

Wellicht dat er ergens op dit forum reeds een dergelijk bestand bestaat. Daar heb ik eerlijk gezegd nog niet naar gekeken. Moet ik nog doen.

Overigens wat ik wel kan doen is het bestandje van mijn vrouwtje, die ook een laatste bezoekersdatum vermeld wilt hebben staan (kennelijk voor haar makkelijker).

Deze is volgens mij al eens eerder mede door jouw hulp opgezet. Enkel de VBA script dan.
 
Code:
Private Sub lb_Pogingen_Click()

End Sub

Private Sub UserForm_Initialize()
    tb_Aantal.Value = 1
    lb_Pogingen.Caption = "Beste " & Application.UserName & "." & vbNewLine & "Als u er zeker van bent om uw financiën bij te werken, geef dan hieronder het wachtwoord in." & vbNewLine & "LET OP!! U heeft slechts 3 pogingen !"
End Sub

Private Sub cb_Bevestigen_Click()
Const strPass  As String = "test"
Dim lPassAttempts As Long
On Error GoTo 0
lPassAttempts = tb_Aantal.Value
  If lPassAttempts <= 2 Then
    lb_Pogingen.Caption = "Beste " & Application.UserName & "." & vbNewLine & "Uw ingave: " & lPassAttempts & " van 3 is foutief." & vbNewLine & "Probeer het nogmaals opnieuw."
        If tb_Wachtwoord <> strPass Then
            With Me
                tb_Wachtwoord.Value = vbNullString
                tb_Wachtwoord.SetFocus
                tb_Aantal.Value = lPassAttempts + 1
            End With
        Else
Vervolg:
            MsgBox "Welkom " & Application.UserName & "." & vbNewLine & "Uw laatste bezoekersdatum was op: ", vbOKOnly + vbInformation, "Toegang toegestaan"
            For i = 2 To Sheets.Count
                Sheets(i).Visible = True
            Next
            Application.GoTo Sheets(Month(Date)).Range("A1")
            Application.GoTo Sheets(Month(Date)).Range("B9")
            Sheets("Wachtwoord").Visible = False
            ActiveWindow.DisplayWorkbookTabs = True
            Unload Me
        End If
    ElseIf lPassAttempts > 1 Then
        If tb_Wachtwoord <> strPass Then
            MsgBox "Beste " & Application.UserName & "." & vbNewLine & "Omdat u 3 keer een verkeerd wachtwoord heeft ingevoerd, wordt u de toegang tot dit bestand geweigerd. Het bestand wordt daarom afgesloten. Mocht dit probleem zich blijven voordoen, neem dan contact op met uw beheerder via telefoonnummer: .", vbOKOnly + vbInformation, "Toegang geweigerd"
            ActiveWorkbook.Close savechanges:=False
        Else
            GoTo Vervolg
        End If
    End If
End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    If CloseMode = 0 Then Cancel = True
End Sub
 
Laatst bewerkt:
Geen idee hoe ik het netjes moet aanpassen naar de regels op het forum..

Ik neem aan dat jij hier wel iets mee kunt.

Dit is zoals je ziet VBA

Code:
MsgBox "Welkom " & Application.UserName & "." & vbNewLine & "Uw laatste bezoekersdatum was op: ", vbOKOnly + vbInformation, "Toegang toegestaan"

In deze code zie je de bezoekersdatum staan. Achter de dubbele punt moet dan de datum en tijd van het vorige bezoek getoond worden.

Is dat mogelijk?
 
Laatst bewerkt:
VBA is niet mijn specialiteit; hierbij kan ik je dus niet helpen.
Maar het zou denk ik voor de specialisten wel makkelijker zijn als ze een xls voorbeeldbestandje hebben.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan