Please explain why following code doesn't work....

  • Thread starter Thread starter FMNT80
  • Start date Start date
F

FMNT80

What I am trying to do is use an array to 'flip'
a sequence of numbers.

The code doesn't work :-(


Sub Panel_Flip()

Dim store(3) As Double
For i = 3 To 0
store(i)=ActiveCell.Offset(0,1+i).Value
Next

For i=0 to 3
ActiveCell.Offset(1,0).Value=store(i)
Next
End Sub


I need to know where I am going wrong...

Thanks
 
And change as well

Activecell.offset(1+i,0).value=store(i)

else you'd be writing the same cell all the time.
 
Current Version: (Working)


Sub Panel_Flip()

Dim store(3) As Double
For i = 3 To 0 Step -1
void = MsgBox(i, vbOKOnly, "i:=")
store(i) = Val(ActiveCell.Offset(0, 1 + i).Value)
void = MsgBox(store(i), vbOKOnly, "Store(" + Str$(i) + ")")
Next

For i = 0 To 3
void = MsgBox(store(i), vbOKOnly, "Store(" + Str$(i) + ")")
ActiveCell.Offset(0, 4 - i).Range("A1").Value = store(i)
Next
End Sub


Now to extend it to a selection of any length (more complicated :-)).
I'm assuming Current Region plays a role.
Ideally it should be possible to have a routine tat will flip
even if your not at the start of the sequence but that would
need some way of determing the start and end columsn of a
selected region..

FMNT80
 
Back
Top