Opgelost Currency veranderen met VBA

Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

Rikimaruu

Gebruiker
Lid geworden
9 jul 2024
Berichten
18
Goedemiddag community,

Ik zou graag in de volgende tabs; Factory Resume-cost t/m Cost - Profit (met currency vermelding) willen kunnen switchen tussen Euro's, USD, en lokale currencies.

Het probleem is dat ik op dit moment elke cel zou moeten veranderen om de currency aanduiding aan te passen, en het bedrag. Het zou mijn helpen als ik bijvoorbeeld altijd het bedrag in euro's aangeef maar het door een command zichtbaar te maken is de lokale currency door een druk op de knop. Currency exchange rate mag geautomatiseerd, maar hoeft niet perse.

Hoe zou ik dit het beste kunnen organiseren?
 

Bijlagen

Op zich lijkt me dit niet zo moeilijk. Wat wel moeilijker is dat de koers van de munteenheid dagelijks meer dan eens wordt aangepast.
 
Een klein beginnetje om alle cellen met valutaopmaak te vinden.
Draai de macro ListFinancialCells om te kijken of je het er mee eens bent.
Omrekenen van die cellen is daarna niet zo ingewikkeld als je een tabel met wisselkoersen en gewenste celopmaak toevoegt.
 

Bijlagen

Laatst bewerkt:
En zo zou je alle cellen met valutaopmaak kunnen omrekenen naar dollars, ervan uitgaande dat de huidige bedragen in € zijn. De wisselkoers en celopmaak zou je uit een tabel op een apart werkblad kunnen halen, hier even hard geprogrammeerd.
Code:
Sub WisselValuta()
    Dim ws As Worksheet
    Dim rng As Range
    Dim cell As Range
    
    For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> "Exchage Rates" Then
            On Error Resume Next
            Set rng = ws.UsedRange
            On Error GoTo 0
            If Not rng Is Nothing Then
                For Each cell In rng
                    If cell.NumberFormat Like "*$*" Then
                        cell.Value = cell.Value * 1.05
                        cell.NumberFormat = "_-[$$-409]* #,##0.00_ ;_-[$$-409]* -#,##0.00 ;_-[$$-409]* " - "??_ ;_-@_"
                    End If
                Next cell
            End If
        End If
    Next ws
    MsgBox "Alle financiele cellen zijn omgerekend naar Dollars.", vbInformation
End Sub
 
Bedankt voor jullie input! Ik moet er nog even induiken, ik stelde de vraag vanuit kennis die ik ooit goed onder de knie had omdat ik vaak met VBA's werkte.. Dit is inmiddels ook even geleden en merk dat ik er toch weer ff in moet duiken :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan