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

Formule in cell en mogelijkheid om waarde in te vullen

Status
Niet open voor verdere reacties.

fabsic01

Gebruiker
Lid geworden
12 feb 2014
Berichten
8
Hi,

Ik probeer het onmogelijke lijkt het maar misschien kunnen jullie mij helpen.
Om deelbetalingen te berekenen van een hoofdbedrag kun je percentages invullen om de deelbetaling uit te rekenen. Echter soms zijn de deelbetalingen beschikbaar en wil je terugrekenen naar percentage.

Ik probeer deze keuze 'open te zetten' dmv een 2 keuze drowdown (EUR en %) waardoor je in de juiste kolom je waarden kan zetten (EUR of %). Dit houdt in dat de formule niet in de cel zelf kan staan want daar moet je ook een waarde of percentage invoeren.

Ik heb de excel ter illustratie toegevoegd waarin bij 1 het bedrag wordt berekend wanneer je hetr percentage invoert en bij 2 wordt het percentage berekend wanneer je het bedrag invoert. Alleen wil ik dat op dezelfde regel en dat lukt dus niet. Mijn VBA skill is niet goed genoeg en ik weet bijna zeker dat dit wel nodig is hiervoor.

Kan iemand mij een zetje in de goed richting geven?

Alvast bedankt,
Stef
 

Bijlagen

  • Help_mij_PaymentSchedulePercentage-Installment.xlsx
    14,3 KB · Weergaven: 13
Begin in D6 of in E6 te typen

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  With Target
    If .Count > 1 Then Exit Sub
    If Not Intersect(.Offset, Range("D6:E14")) Is Nothing Then
       Application.EnableEvents = False
      .Offset(, IIf(.Column = 5, -1, 1)) = Choose((.Column = 5) + 2, .Value / [E3], .Value * [E3])
       Application.EnableEvents = True
    End If
  End With
End Sub
 

Bijlagen

  • payments.xlsm
    20,9 KB · Weergaven: 8
Laatst bewerkt:
deze doet het ook als je meerdere cellen tegelijk wist.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Set ra = Range("D6:E14")
    Set temp = Intersect(Target, ra)
    If temp Is Nothing Then Exit Sub
    Application.EnableEvents = False
      For Each t In temp
        If t = "" Then
          Intersect(t.EntireRow, ra).ClearContents
        Else
          If t.Column = ra.Column Then
            t.Offset(, 1) = [E3] * t
          Else
            t.Offset(, -1) = t / [E3]
          End If
        End If
      Next
    Application.EnableEvents = True
End Sub
 

Bijlagen

  • payments sp.xlsm
    20,2 KB · Weergaven: 7
Laatst bewerkt:
Zonder de loop kan ook nog

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim r
  Set r = Range("D6:E14")
  With Target
    If Not Intersect(.Offset, r) Is Nothing Then
      Application.EnableEvents = False
      If .Cells(1) = "" Then
        Intersect(r, .EntireRow).ClearContents
      Else
        .Offset(, IIf(.Column = 5, -1, 1)) = Choose((.Column = 5) + 2, .Value / [E3], .Value * [E3])
      End If
      Application.EnableEvents = True
    End If
  End With
End Sub
 
Helemaal geweldig dit! Beide zijn nog beter dan ikzelf had gewild!

thanks so much!

Groet,

steffen
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan