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

Btw uit een bedrag halen in éénzelfde cel via VBA

Status
Niet open voor verdere reacties.

agrashh

Gebruiker
Lid geworden
24 feb 2012
Berichten
20
Ik moest een nieuwe topic starten van spaarie dus hier ben ik :)

Ik ben bezig met een factuur op te stellen en ik zou graag in een cel een bedrag intypen waarna die cel automatisch de btw eruit haalt.

De formule om btw van iets af te trekken= bedrag x 100 /121
Ik typ dus bv '500' in die cel waarna die cel automatisch verandert naar '413,22'


Geen idee hoe VBA in elkaar zit, maar ik heb een testversie geupload en het zou voor cel f26 zijn of is het beter dan ik mijn "echte" factuur upload?
 

Bijlagen

Zet onderstaande in de bladmodule van je bestand.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$F$26" Then
        Application.EnableEvents = False
        aTarget.Value = Target.Value / 1.21
    End If
    Application.EnableEvents = True
End Sub
 
Hmm, het werkt precies niet tenzij ik iets verkeerds heb gedaan:

k9f3av.jpg


Wat ik wel erbij heb vergeten te vermelden is dat het voor de cellen f25 tem f49 van toepassing zou zijn.
 
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("F25:F49")) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = Target.Value / 1.21
    End If
    Application.EnableEvents = True
End Sub
 
Bedankt voor de snelle hulp, die laatste heeft het gedaan.
Moest merksem geen 100 km van mijn huis zijn, ging ik wel eens een broodje bij je halen :thumb:
 
Oei, ik heb te vroeg victorie gekraait.

Daarstraks maakte ik nog eens een nepfactuur en alles werkte naar behoren, maar toen ik daarna de bedragen delete kreeg ik een soort van foutmelding en in de programmacode stond "Target.Value = Target.Value / 1.21" in geel aangeduid. Ik heb dan de hele boel nog eens gecopy/paste, maar nu werkt die niet meer
 
Draai eerst eens deze
Code:
Sub reset()
    Application.EnableEvents = True
End Sub
En vervang dan de andere code door deze
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("F25:F49")) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = Target.Value / 1.21
    End If
    Application.EnableEvents = True
End Sub
 
Wat bedoelde u met "Draai eerst eens deze".
Ik heb de eerste code gekopieerd in de programmacode, opgeslaan, naar excel gegaan, terug naar de programmacode en daarna de 2de code gekopieerd en daarna ook opgeslaan, maar het resultaat blijft hetzelfde.


Ik heb ook al 2 maal deze foutmelding gekregen. Mag ik die macro beveiliging op "laag" zetten?
33njnzc.jpg
 
Zet je cursor ergens in de resetcode en druk op F5. Je zal niets zien gebeuren, maar probeer daarna eens terug cijfers in te brengen op je factuur.
Als je enkel betrouwbare bestanden met macro's gebruikt mag je de macrobeveiliging op laag zetten, anders opgelet.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan