Toon posts:

[excel] hele kolom omrekenen

Pagina: 1
Acties:
  • 1.929 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Misschien een hele domme vraag hoor, maar ik kom er echt niet aan uit...

Ik wil in excel een hele kolom getallen vermenigvuldigen met een percentage. De uitkomt van de berekening moet ook meteen de nieuwe waarde van de velden zijn. Ze moeten dus vervangen worden. Even een voorbeeldje:

code:
1
2
3
4
5
34
6
12
31
35


Dit is een kolom getallen in excel. En deze waarden wil ik dus permanent veranderen door ze te vermenigvuldigen met 2. Het nieuwe rijtje moet dus worden

code:
1
2
3
4
5
68
12
24
62
70


Iemand een ideetje hoe ik dit aan moet pakken?

  • ksmedts
  • Registratie: Januari 2002
  • Laatst online: 16-12-2021
denk dat je dat moet gaan doen met vba.... cel uitlezen in een variabele zetten. De berekening eroverheen halen en weer terug schrijven... is denk ik de enige mogelijkheid

  • hufkes
  • Registratie: Maart 2000
  • Laatst online: 21-12 15:16

hufkes

nee, daar staat niet hufter!

Misschien kun je ook gewoon een verborgen kolom maken waarin je de standaard waarden zet, een vakje met de factor ergens en dan dus een kolom met de "verborgen waarde" * factor die je laat zien.
Aanpassen factor is dan dus ook meteen nieuwe getalletjes.

[ Voor 11% gewijzigd door hufkes op 27-11-2002 10:46 ]

Onderstaande signature is al >20jr oud ***hoe dan***
---
Het internet is een veelbelovend medium
....dat maar heel weinig van zijn beloftes nakomt.
Wat weg is... raak je nooit meer kwijt :P


Verwijderd

in de volgende cel: a1*2 of niet?
Als je die cel daarna kopieert, en plakt in alle andere cellen waar hij dat moet uitrekenen..werkt dat toch?
of snap ik de vraag misschien niet echt?

Verwijderd

Topicstarter
Het probleem is een beetje dat het blad zo overzichtelijk mogelijk moet blijven, ook als ermee geschoven en gekopieerd wordt. Ik gebruik dus liever geen formules.

Daar komt nog eens bij dat wanneer ik er een verborgen veld bijzet, de waarden altijd vermenigvuldigd blijven worden met de waarde in dat verborgen veld. En dat is ook niet de bedoeling.

Is er geen manier om de waarden in een veld vast te zetten? Dus om zeg maar de formule eruit te filteren en de waarden (uitkomsten van de berekening) als veldvulling te gebruiken?

En ik ben redelijk goed in VBA, maar in Excel heb ik er geen ervaring mee. Hoe moet je dat aanpakken?

Verwijderd

Topicstarter
Verwijderd schreef op 27 November 2002 @ 11:11:
in de volgende cel: a1*2 of niet?
Als je die cel daarna kopieert, en plakt in alle andere cellen waar hij dat moet uitrekenen..werkt dat toch?
of snap ik de vraag misschien niet echt?
In Excel kun je geen berekening uitvoeren met een waarde uit dezelfde cel. Dan krijg je namelijk een kringverwijzing...

Verwijderd

je kan wel de uitkomst van de formules selecteren ->
kopieeren ->
plakken-speciaal in de cellen waar je ze wil hebben (plakken-speciaal alleen de waarden)
dan heb de dus de echte getallen gekopierd..
Zoiets??

Verwijderd

Verwijderd schreef op 27 November 2002 @ 11:15:
[...]


In Excel kun je geen berekening uitvoeren met een waarde uit dezelfde cel. Dan krijg je namelijk een kringverwijzing...
Ik weet idd wat je bedoelt, ik kanniet echt duidelijk uitleggen wat ik bedoel...
Bijv: in cel a2 zet je: a1*2

Dan verdubbelt hij de waarde in cel a1...dat bedoel ik
(is niet echt eenvoudig uitteleggen merk ik)

  • ksmedts
  • Registratie: Januari 2002
  • Laatst online: 16-12-2021
Met onderstaanden code zou je een heel eind kunnen komen moet je alleen nog ff omschrijven zodat ie dat voor meerder rijen moet gaan doen....

suc6

dim varq

Worksheets("tabellen").Activate
Range("a1").Select
varq = ActiveCell * 2
Range("a1").Select
Selection.Value = varq

  • Sherlock
  • Registratie: Mei 2000
  • Laatst online: 13:43

Sherlock

No Shit

Ik heb dit laatst ook ongeveer moeten doen, toen "kreeg" ik een code als deze:
code:
1
2
3
' Celwaarde vermenigvuldigen met celwaarde (A1)
        
    Blad1.Cells(2, 12) = Blad1.Cells(2, 12) * Blad1.Cells(1, 1)


Op die manier hoef je de cel nl. niet te activeren.

Je zou ook een formuliertje kunnen maken waarin je het percentage invult, en die dan in de plaats van Blad1.Cells(1, 1) zetten.

Nadeel: je bent de oorspronkelijke waarde van je kolommen "kwijt" en je moet het activeren door een knop oid. (Maar die kun je dan wel weer mooi in een formuliertje proppen met percentage tekstvakje...) :)

[ Voor 56% gewijzigd door Sherlock op 27-11-2002 11:31 . Reden: Nadeel toegevoegd ]

And if you don't expect too much from me, you might not be let down.


Verwijderd

Topicstarter
Ok mensen! Ik ben eraan uit!

Achteraf heb ik heel erg lomp gedaan, want de tip van psxfan werkte ook gewoon (alles in een tijdelijke kolom laten uitrekenen en dan plakken speciaal gebruiken... }:O

Maar goed, ik zal de code ook even posten voor het geval iemand er nog een keer iets aan heeft...

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
'procedure om een kolom met waarden met een vast getal te vermenigvuldigen en meteen te vervangen.

Sub celvermenigvuldig()

Dim rijwaardestart As Single
Dim rijwaardestop As Single
Dim kolomwaarde As Single
Dim product As Single

'inputboxen om de variabelen te vullen

rijwaardestart = InputBox("Voer hier het rijnummer in waar begonnen moet worden met vermenigvuligen", "Rijnummer start")
rijwaardestop = InputBox("Voer hier het rijnummer in van de cel die als laatste vermenigvuldigd moet worden", "Rijnummer start")
kolomwaarde = InputBox("Voer hier het nummer in van de kolom waarin de waarden staan (A=1, B=2, C=3, etc.)", "Kolomnummer start")
product = InputBox("vul hier het getal in waarmee vermenigvuldigd moet worden", "Product")

'celwaarden vermenigvuldigen met product

Do Until rijwaardestart > rijwaardestop

Blad1.Cells(rijwaardestart, kolomwaarde) = Blad1.Cells(rijwaardestart, kolomwaarde) * (product)

rijwaardestart = rijwaardestart + 1

Loop


Bedankt allemaal!

ps. Sorry voor het in de war schoppen van de lay-out...

Verwijderd

Of ik snap je vraag niet, of je doet extreem moeilijk.

Zet ergens in een lege cel de waarde waar je mee wilt vermenigvuldigen, kopieer die, selecteer de kolom, kies bewerken-plakken speciaal, en vink 'vermenigvuldigen' aan.

[ Voor 4% gewijzigd door Verwijderd op 27-11-2002 13:44 ]


Verwijderd

Topicstarter
Ik ben er niet helemaal bij vandaag... Dus kies maar voor optie 2; ik doe extreem moeilijk |:(
Pagina: 1