Komma/Punt in een getal zetten

Status
Niet open voor verdere reacties.

roelandjelmer

Gebruiker
Lid geworden
5 jan 2017
Berichten
16
Hallo allen!

Ik heb een vraag en iets in mij zegt dat er een hele simpele oplossing voor moet zijn.
Ik kopieer van uit een programma genaamd "abtech" een tabel met gegevens en cordinaten, jammer genoeg neemt hij de punten niet mee.
Dus nu zou ik met 2 knoppen "10,xxxxxx" en "100,xxxxx" de komma willen zetten in de cordinaten.

Dus ik selecteer een aantal cellen waar bijvoorbeeld de waarde 1725984234 instaat
en met de knop "10,xxxxxx" wordt dit 17,25984234
en met de knop "100,xxxxx" word dit 172,5984234

Dit doet hij dan met alle geselecteerde cellen

Natuurlijk is dit voor 1 tabel een kleine moeite om dit handmatig te doen, maar omdat ik vele van deze tabel invoer is het met een macro natuurlijk velen malen makkelijk
Ik hoop dat er een oplossing voor is!

Bvd Roel Hietbrink
(Bijlage linker tabel is gewenste resultaat en recht hoe ik het uit Abtech kopieer)
 

Bijlagen

  • voorbeeld.PNG
    voorbeeld.PNG
    38,6 KB · Weergaven: 60
  • Voorbeeld.xlsx
    Voorbeeld.xlsx
    14,6 KB · Weergaven: 41
Laatst bewerkt:
Er staan toch punten zo te zien.
Kan dat bijvoorbeeld niet met...
Code:
Sub hsv()
Dim j As Long
For j = 7 To 8
 Columns(j).Replace ".", "."
 Columns(j).NumberFormat = "#.###############"
Next j
End Sub
 
Antwoord

Hallo HSV,

Bedankt voor uw snelle reactie!

Ik had het juiste excel sheetje volgensmij niet toegevoegt, Deze wie er nu in staat is wel goed.
Hierbij is de tabel links gewilt en recht hoe hij was.

In uw macro denk ik te zien (ik weet het niet zeker) maar dat je de hele kolom G en H aanpakt, terwijl ik juist zelf een hele hoop cellen wil selecteren en daar wat mee doen. Mieschien met het gebruik van Activecell.???

Groeten, Roel
 
Bestandje vergeten Roel?
 
Bijvoorbeeld.

Als je een selectie maakt in kolom T.
Code:
Sub hsv()
If ActiveCell.Column = 20 Then
With Selection
 .Name = "bereik"
 .Replace ".", ""
   [bereik] = Evaluate([bereik].Address & "/" & 1 & String(Len([bereik].Cells(1)) - 2, "0"))
   [bereik].NumberFormat = "#.##############"
End With
Application.Names("bereik").Delete
End If
End Sub
 
Dank

Ik wil u bedanken voor deze snelle oplossing.

Kom er de eerste tijd niet aan toe, maar zal zeker groot deel van uw oplossing gebruiken!

Bedankt!

Groeten, Roel
 
Heej HSV,

Het enige wat nog niet kan is meerdere cellen selecteren en dan in 1x de komma's zetten, ik weet niet of dit mogelijk is maar mij nog niet gelukt op het moment

Groeten, Roel
 
Hoi Roel,

Bij mij wel; alleen in kolom T natuurlijk zoals de code aangeeft.
Ik heb de selectie al voor je gedaan.
 

Bijlagen

Dank

Zo dat is een hele snelle reactie!

aah jaa inderdaad zie ik dat het werkt.
helaas is dit net niet wat ik bedoel, aangezien ik bijvoorbeeld
cellen in kollom T rij (1,3,4,5) wil selecteren en hier een "10,xxxx" van wil maken
en cellen in kollom T rij (2 en 6) wil selecteren en hier een "100,xxxx" van wil maken

wanneer ik dit nu doe krijg ik #WAARDE

Groeten, Roel
 
Dan moet je onderstaande even testen.
Code:
Sub hsv()
Dim cl As Range
If ActiveCell.Column = 20 Then
   For Each cl In Selection
       cl.Replace ".", ""
       cl = Evaluate(cl & "/" & 1 & String(Len(cl) - 2, "0"))
       cl.NumberFormat = "#.##############"
  Next cl
End If
End Sub
 
aaah, Kijk perfect! en deze code werkt ook perfect voor de 100,xxxxx
door de -2 te veranderen in -3.

Ik zou u hartelijk willen bedankten!

Groet, Roel
 
Graag gedaan.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan