Find & Replace in kolom van tabel

Status
Niet open voor verdere reacties.
Met kolom 8 gebeurt nu helemaal niets. De output uit exact is 155.190 zonder ook maar enkele formule of toepassing te gebruiken. Dit moet worden 155,19. De punten in komma's veranderen is geen probleem echter moet het laatste cijfer hier wel vanaf. Uit exact komt namelijk 1 decimaal te veel.
 
Nog even naar je macro gekeken en hij werkt perfect. Enige nadeel is nog dat ie alleen op EUR werkt. Wanneer we met GBP of USD rekenen gaat ie niet goed. Kun je dit nog voor elkaar boksen? Dan zijn we je eeuwig dankbaar! Of het verhaal van de valuta er helemaal uit halen? Dus dat ie zich alleen met de cijfers bezighoudt?
 
Laatst bewerkt:
Volgens mij kun je in het boekhoudprogramma Exact aangeven welke notatie voor export gebruikt moet worden.
 
Dat gaat helaas niet zo makkelijk als dat jij zegt. Hier zijn veel (grote) consequenties aan verbonden. Enige wat er nog aan de macro moet aangepast worden is dat ie ook werkt bij de notaties GBP en USD. Ben er zelf al mee aan het stoeien maar kom er nog niet echt uit..
 
Problemen moet je bij de bron aanpakken.
 
Dat staat ook zeker op de planning maar komt nu nog te vroeg voor onze organisatie. Vandaar dat we tijdelijk met een tussenoplossing willen werken..
 
Ik weet nog wel en goede externe adviseur voor jullie.....
 
Haha, laten we eerst dit oplossen dan gaan we daarna verder met de kern van het probleem aan te pakken.
 
Terwijl jullie lekker aan het kleppen waren, heb ik de macro maar aangepast. Leek mij nuttiger :)
Code:
Sub Kolommen()
Dim kolom As Column, cel As Cell
Dim i As Integer, x As Integer, iW As Double, sW As String
Dim arr As Variant
    
    arr = Array(3, 8)
    For i = LBound(arr) To UBound(arr)
        x = arr(i)
        Set kolom = ActiveDocument.Tables(2).Columns(x)
        For Each cel In kolom.Cells
            If x = 8 Then
                cel.Range.Text = Split(cel.Range.Text, " ")(LBound(Split(cel.Range.Text, " "))) & " " _
                    & Format(CDbl(Replace(Split(Replace(Left(cel.Range.Text, Len(cel.Range.Text) - 1), ",", ""), " ") _
                    (UBound(Split(Replace(Left(cel.Range.Text, Len(cel.Range.Text) - 1), ",", ""), " "))), ".", ",")), "#,##0.00")
            Else
                cel.Range.Text = Replace(Replace(cel.Range.Text, ",", ""), ".", ",")
            End If
        Next cel
    Next i
End Sub
 
Je bent geweldig OctaFish! Hartstikke bedankt! Ik heb nog even de save als PDF ingevoegd en nu werkt ie precies zoals we hem hebben willen:)!
 
Je kunt toch ook de internationale instellingen even wijzigen ?

Of deze macro gebruiken ?
Code:
Sub M_snb()
    ThisDocument.Tables(2).Columns(8).Select
    With Selection.Find
        .Execute Split(Selection)(0), replacewith:="", Replace:=2
        .Execute ",", replacewith:="", Replace:=2
        .Execute ".", replacewith:=",", Replace:=2
    End With

    ThisDocument.Tables(2).Columns(3).Select
    Selection.Find.Execute ".", replacewith:=",", Replace:=2
End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan