• 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.

VBA vraag

Status
Niet open voor verdere reacties.

Edbrug

Gebruiker
Lid geworden
21 jan 2019
Berichten
55
Beste Leden,

Ik heb een vraag over een vba in een factuur waar ik in bezig ben.Wat ik graag zou willen is als ik een factuur boek en hij is al aanwezig in mijn boeking dat ik een waarschuwing krijg.
Ik heb een formule gevonden maar krijg hem niet werkend (zie bijlage)

mvrgr Ed
 
Dat kan waarschijnlijk ook met validatie, maar je zult iets concreter moeten zijn. Bedoel je dat er geen dubbeling in factuurnummers mag bestaan?
 
Beste Timshel

Er mogen inderdaad geen dubbele factuurnummers bestaan dus als het factuur geboekt wordt je daar een melding van krijgt
 
je factuurnummer in factuur is een tekst, in je tabblad boekingen een getal, dus best 2 zoeken als tekst en als getal
Code:
Sub factuurboeken()

    Bericht = "De ingevulde gegevens worden geboekt." & vbCrLf & "Weet je het zeker?"
    Knoppen = vbYesNo + vbExclamation + vbDefaultButton2
    Titel = "gegevens boeken"
    Antwoord = MsgBox(Bericht, Knoppen, Titel)
    'Gebruiker koos Ja:

   [COLOR="#FF0000"] a = Application.Match(Range("D36").Value, Worksheets("Factuurboeking").Range("A4:A255"), 0) 'een 1e keer gaan zoeken (als string)
    b = Application.Match(CLng(Range("D36").Value), Worksheets("Factuurboeking").Range("A4:A255"), 0) 'nog een keer zoeken als getal
    If IsNumeric(a) Or IsNumeric(b) Then 'op 1 van beide manieren iets gevonden
        MsgBox "Er is al een factuur met dit nummer aanwezig!" & vbLf & "op regel " & 3 + IIf(IsNumeric(a), a, 0) + IIf(IsNumeric(b), b, 0) & " van tabblad factuurboeking"
        Exit Sub
    End If[/COLOR]
 
Is het niet handiger, nu je toch met VBA werkt, automatisch een faktuurnummer te maken, dat inherent uniek is ?
 
Beste snb mijn factuurnummer wordt gemaakt als ik het factuur wist maar bedankt voor het meedenken
 
Factureren vanuit Excel? Waar staan jouw klantengegevens? Waar staan jouw producten? Of vul je alles steeds opnieuw met de hand in?

Maak gebruik van een tabel waarin je de gegevens opslaat dan heb je aan 1 knop voldoende.
Code:
Sub VenA()
  With Sheets("Factuurboeking").ListObjects(1)
    .ListRows.Add
    .DataBodyRange.Cells(.ListRows.Count, 1).Resize(, 7) = Array([D36].Value, [D37].Value, , [D41].Value, [B23].Value, [K72].Value, [I70].Value)
    .DataBodyRange.Cells(.ListRows.Count, 10) = "openstaand"
  End With
  t = Range("D36")
  Range("B23,C24,B25,B26,D35,D40:I40,D41:I41,H33,A42:K68").ClearContents
  Range("D36") = t + 1
End Sub
 

Bijlagen

Laatst bewerkt:
VenA De klantgegevens staan bij ons in een listbox die je alleen aan moet klikken en wij hebben geen vaste producten (klein aannemersbedrijf) dus het meest met offertes.
Verder is het een prachtige formule en werkt perfect maar ik denk dat de degene die er mee werkt er weer in gaat zitten klooien (factuurnr weer aanpassen e.d), hij zoe eigenlijk beveiligd moeten worden.
 
VenA Ik heb nog een vraag als ik het factuur boekt komt er bij de betaaldatum niet de datum te staan + 30 dagen?
Kan het de cel (dagen open) ook bijhouden de dagen na de betaaldatum.
 
Beste VenA
Ik ben er al een poosje mee aan het stoeien geweest maar kom er niet uit
Ik ben nu de instellingen van je aan het aanpassen in mijn sheet maar als ik de factuur boekt krijg ik niet gelijk de goede datum in cel K4 (0-1-1900)en geen telling in L4 (0).
Mijn vraag is zou je daar nog een keer na willen kijken het liefst heb ik er eigelijk de datum vandaag in.
Ik ben er al een poosje mee aan het stoeien geweest maar kom er niet uit.
mvrgr Edbrug
 
Plaats dan even het bestandje met hoe je het toegepast hebt.
 
sorry dat het even duurde moest even eten.
Waar plaats ik in deze reactie mijn bestand.
 
Vraag VBA

Hierbij het bestand,

door de vba in mijn bestand te kopieren zijn de data en getal nu wel goed, mijn vraag is nu of de dagen kunnen meelopen na de 30 dagen of ander de betaaldatum in datum vadaag() te veranderen.
 
Is toch alleen de formule in kolom L aanpassen?
Code:
=TODAY()-[@Datum]
 
zoiets in K2 en doortrekken
Code:
=MAX(VANDAAG();[@Datum]+30)
 
Je hebt twee verschillende oplossingen gekregen voor twee verschillende kolommen. Dan lijkt het mij dat er iets aan de vraagstelling niet klopt. Met 'het wordt niets' kan niemand iets.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan