Gegegevens omzetten naar een rekenwaarde

Status
Niet open voor verdere reacties.

Robert Smidt

Gebruiker
Lid geworden
26 mei 2009
Berichten
901
Beste Forumleden,

Ik zou graag geholpen willen worden met een exceldocument waar ik gegevens vanuit een webbased programma heb gekopieerd en in een excelbestand heb geplakt. Vervolgens wil ik met de bedragen in de kolommen G en I een berekening uit laten voeren, echter doordat ik de data heb gekopieerd, herkent Excel de celinhoud niet. Ook wanneer ik naar celeigenschappen ga en dit aanpas, blijft het nog steeds onherkenbaar. Vreemd genoeg wanneer ik in kolom G het €-teken en de spatie weghaal, dan herkent het systeem het bedrag wel. Dus dacht ik een macro te maken om voornoemde te deleten.

Code:
Sub waardeaanpassen()
Range("g11:g450").Replace "€ ", ""
End Sub

Helaas werkt dat ook niet, ook wanneer "€" zonder een spatie gebruik.

Wie kan mij helpen om dit op te lossen. Een voorbeeld gaat mee als bijlage en de macro staat onder het ziekenauto pictogram.

Alvast heel erg bedankt.

Robert
 

Bijlagen

  • Rekensjabloon.xlsm
    60,3 KB · Weergaven: 15
Code:
Sub M_snb()
  Range("g11:g470").Replace Left(Range("G13"), 2), ""
End sub
 
Bedankt voor het snelle antwoord.

Het gaat nog niet helemaal goed, het systeem verwijderd keurig de "€ ", maar ziet het getal als tekst. Wanneer je kijkt bij celeigenschappen dan staat daar Financieel met een euroteken, maar het systeem maakt er geen geldbedrag van. Dit kun je overigens ook zien in G2 waar een formule staat. Je moet nu eerst op het bedrag klikken alvorens het systeem er een geldbedrag van maakt.
 
Niet gezocht ? niet gevonden ?

Code:
Sub M_snb()
  Range("g11:g470").Replace Left(Range("G13"), 2), ""
  Range("g11:g470").value= Range("g11:g470").value
End sub
 
Niet gevonden.

Helaas werkt het niet, de cellen en deze kolommen geven als waarde "getal opgeslagen als tekst" wanneer je hier op klikt verschijnt het €-teken.
 
Ik zie net, wanneer je converteert naar een getal (per cel) dan gaat het per cel goed. Is er een mogelijkheid om dit in de macro te verwerken voor de hele kolom?
 
Je kunt het hele bereik selecteren en het in 1 keer omzetten met de melding die je krijgt.

Of je doet het bvb zo
Code:
Sub j_v()
 With Range("G11:G470")
   .Replace Left(Range("G11"), 2), ""
   .NumberFormat = "0.00"
    For Each cell In .Cells
     cell.Value = cell.Value * 1
    Next
 End With
End Sub

Of als je de eurotekens wilt behouden kan het inene
Code:
Sub j_v()
 For Each cell In Range("G11:G470")
   cell.Value = cell.Value * 1
 Next
End Sub
 
Laatst bewerkt:
Beste JV,

Super bedankt voor de twee oplossingen. Ik heb nog een klein vraagje. De berekening gaat nu tot aan regel 470, het systeem vult nu tot die regel overal 0,00. Is het ook mogelijk dat hij dat alleen doet tot aan de laatste gevulde regel, dit is nl. variabel. In mijn geval is kolom C altijd gevuld. Het aantal gevulde regels wisselt per keer, echter, dat het vanaf regel 11 begint is een vast gegeven. Zou dat nog aangepast kunnen worden.

De laatste variant zou volgens jou het €-teken in stand houden, dit doet het systeem helaas niet. Op zich vind ik dit geen probleem hoor, maar mocht dit eenvoudig aan te passen zijn, dan zou het fijn zijn.

Mocht dit nog lukken, dan zou dat super zijn.

ps. Ik ben hier al heel erg blij mee.
 
NB
Inmiddels werkt het dat het €-teken blijft staan. Ik zag later dat het bij celeigenschappen op getal stond i.p.v. bedrag, excuus. Dus dat werkt perfect. :thumb:
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan