Excel2003 waarde ophogen tot aan voorwaarde is voldaan.

Status
Niet open voor verdere reacties.

Techcrea

Gebruiker
Lid geworden
20 mrt 2007
Berichten
17
1010 BR=5
1020 N=10*BR
1030 BR=BR+1
1050 IF (N<70) THEN 1020 ELSE 1350
1350 Verder

Bovenstaand gwbasic loopje wil ik in Excel2003 hebben. Die mogelijkheid is er blijkbaar niet in Excel. Kan dat wel op een andere manier bv in VBA?? En hoe dan wel?
 
Laatst bewerkt:
Dag Techcrea,

In VBA kan (bijna) alles. Maar de reeks getallen die jij weergeeft lijkt mij niet gemakkelijk automatisch te genereren.

Verklaar je nader wat betreft je wensen.

gegroet,

Axel.
 
In werkelijkheid staan er wat ingewikkeldere formules. Mij gaat het om het principe.

Er moet binnen Excel een bepaalde waarde van een variabele in stapjes worden opgehoogd tot er aan een bepaalde voorwaarde wordt voldaan.
Dus BR ophogen met telkens 0.01, kijken of aan de voorwaarde is voldaan en anders weer ophogen etc (een soort do..while loopje).

Heb je hier genoeg aan?
 
Dag Techcrea,

Als de begin en de eindwaarden bekend zijn is een For Next loop handiger.

For i = beginwaarde To eindwaarde Step stap

Next

stap kan zowel real als integer zijn en zowel positief als negatief. In hetv laatste geval wordt de code

For i = eindwaarde To beginwaarde

Next

Gegroet,

Axel.
 
eindwaarde niet bekend

Hallo Axel,

De beginwaarde en stapgrootte zijn bekend, de eindwaarde niet.
Die is afhankelijk van een bepaalde voorwaarde. Zolang daar niet aan voldaan is,
moet de variable met een stapgrootte worden verhoogd.
Het eea moet uiteindelijk in een VBA macro worden opgenomen binnen Excel of kan dat anders? Kun je me de VBA code erbij geven, ik heb daar geen enkele ervaring mee?!
Bedankt alvast.

gr.
 
Dag Techcrea,

begin = 1
rij=1
stap = 10
Do Until IsEmpty(Range("B" & rij).value)
Range("A" & rij).Value = begin
begin = begin + stap
rij = rij + 1
Loop

De lus werkt totdat cel B van de actuele rij leeg is

Gegroet,

Axel
 
Dank Axel, dat helpt me een eind op weg.
1. Hoe kan ik aan een variabele in VBA de waarde van een excel-cel toekennen?
bv BR = waarde cel B4
2. Hoe kan ik bv 2 excel-cellen op elkaar delen in VBA?

als je nogeens tijd hebt...
 
Dag Techcrea,

Vraag 1:
Dim a as string

a = ActiveWorkbook.Sheets(1).Cells(1,1).value

Vraag 2:

Dim a as single

With ActiveWorkbook.Sheets(1)
a = .Cells(1,1) / .Cells(1,2) 'werkt alleen als de celinhouden getallen zijn.
End With

Gegroet,

Axel
 
Hallo Axel,

Het probleem is opgelost. Het duurde even, maar nu heb ik door hoe eea in elkaar zat.
Nogmaals bedankt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan