help with generating a percentage value

  • Thread starter Thread starter john.9.williams
  • Start date Start date
J

john.9.williams

Hi,

I have a simple program that scrolls through a row collecting numbers,
at various points in the row i am trying to calulate a percentage.

i keep getting an error with the below code, (not very advanced)

Range("f9").Select
Do Until ActiveCell = ""
Selection.Offset(0, 1).Select
volume = ActiveCell
Selection.Offset(0, 1).Select
comp = ActiveCell
Selection.Offset(0, 1).Select
compercent = comp / volume * 100 (this is where it debugs to giving
me an overflow error)
activecell = compercent



I have tried declaring my variables as integers and long still no joy

any help would be great

John
 
Hi,

I have a simple program that scrolls through a row collecting numbers,
at various points in the row i am trying to calulate a percentage.

i keep getting an error with the below code, (not very advanced)

Range("f9").Select
Do Until ActiveCell = ""
Selection.Offset(0, 1).Select
volume = ActiveCell
Selection.Offset(0, 1).Select
comp = ActiveCell
Selection.Offset(0, 1).Select
compercent = comp / volume * 100 (this is where it debugs to giving
me an overflow error)
activecell = compercent



I have tried declaring my variables as integers and long still no joy

any help would be great

John

KISS

range("i9").value = range("g9")/range("h9")* 100


Range("f9").Select
Do Until ActiveCell = ""
Selection.Offset(0, 1).Select
volume = ActiveCell
Selection.Offset(0, 1).Select
comp = ActiveCell
Selection.Offset(0, 1).Select
compercent = comp / volume * 100 (this is where it debugs to giving
me an overflow error)
activecell = compercent
 
KISS

range("i9").value = range("g9")/range("h9")* 100

Range("f9").Select
  Do Until ActiveCell = ""
  Selection.Offset(0, 1).Select
  volume = ActiveCell
  Selection.Offset(0, 1).Select
  comp = ActiveCell
  Selection.Offset(0, 1).Select
  compercent = comp / volume * 100  (this is where it debugs to giving
me an overflow error)
activecell = compercent- Hide quoted text -

- Show quoted text -

Hi

Thanks

sorry i fogot a bit of my code

Range("f9").Select
Do Until ActiveCell = ""
Selection.Offset(0, 1).Select
volume = ActiveCell
Selection.Offset(0, 1).Select
comp = ActiveCell
Selection.Offset(0, 1).Select
compercent = comp / volume * 100 (this is where it debugs to
giving
me an overflow error)
activecell = compercent
Selection.Offset(0, 1).Select
loop


The code loops through alot of cells adding percentages as it goes,
hence why i have used variables

thanks
 
KISS

range("i9").value = range("g9")/range("h9")* 100

Range("f9").Select
  Do Until ActiveCell = ""
  Selection.Offset(0, 1).Select
  volume = ActiveCell
  Selection.Offset(0, 1).Select
  comp = ActiveCell
  Selection.Offset(0, 1).Select
  compercent = comp / volume * 100  (this is where it debugs to giving
me an overflow error)
activecell = compercent- Hide quoted text -

- Show quoted text -

sorry i forgot part of the code

Range("f9").Select
Do Until ActiveCell = ""
Selection.Offset(0, 1).Select
volume = ActiveCell
Selection.Offset(0, 1).Select
comp = ActiveCell
Selection.Offset(0, 1).Select
compercent = comp / volume * 100 (this is where it debugs to
giving
me an overflow error)
activecell = compercent
activecell.offset(0,1).select
loop

the code loops through the cells picking up the values and adding a
percentage, until it comes to the end of the list

many thanks
 
Hi John,

Am Tue, 13 Mar 2012 05:38:07 -0700 (PDT) schrieb
(e-mail address removed):
the code loops through the cells picking up the values and adding a
percentage, until it comes to the end of the list

every third column is empty? Then try:

Dim LCol As Long
Dim i As Long

LCol = Cells(9, Columns.Count).End(xlToLeft).Column + 1
For i = 9 To LCol Step 3
Cells(9, i) = Cells(9, i - 1) / Cells(9, i - 2) * 100
Next

or:

Dim LCol As Long
Dim i As Long

LCol = Cells(9, Columns.Count).End(xlToLeft).Column + 1
For i = 9 To LCol Step 3
Cells(9, i) = Cells(9, i - 1) / Cells(9, i - 2)
Cells(9, i).NumberFormat = "0.00%"
Next


Regards
Claus Busch
 
Back
Top