View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Rick Rothstein Rick Rothstein is offline
external usenet poster
 
Posts: 5,934
Default Moving shapes

For your "right" and "left" cases... do you really want to add the "Height"
property of the .TopLeftCell.Offset(-i) cell, or did you want to be using
the Width property instead?

--
Rick (MVP - Excel)


"Evil Red Smurf" wrote in message ...
The shape is supposed to move around a specified path in a series of steps
the size of which are decided by a different set of code (That bit works
fine). The part of the code that I'm struggling with instructs the shape
to change direction when it reaches specific points. What I've done is,
throughout the movement operation there is a word in A1, and depending on
what that word is changes the dirrection setting of the shape. The
movement works brililantly until it reaches 1 corner and the shape should
then move in a downwards direction. The code I have for that at the
moment is:

With ActiveSheet.Shapes("RedDot")
For i = 1 and d*16
Select Case Range("A1")
Case "down"
.Top = .Top + .TopLeftCell.Offset(-i).Height
DoEvents
WAIT
checkposred
Case "right"
.Left = .Left + .TopLeftCell.Offset(-i).Height
DoEvents
WAIT
checkposred
Case "up"
.Top = .Top - .TopLeftCell.Offset(i).Height
DoEvents
WAIT
checkposred
Case "left"
.Left = .Left - .TopLeftCell.Offset(i).Height
DoEvents
WAIT
checkposred
End Select
Next
End With

Apologies for the hand-written code, I'm new to this and I can't see how
to add the code any other way.

Many thanks

Evil Red Smurf



Peter T wrote:

With the limited amount of information given, and the hand written
15-Dec-09

With the limited amount of information given, and the hand written code
snippet, can only guess maybe the row of the topleftcell is less than 1+i

Regards,
Peter T

Previous Posts In This Thread:


Submitted via EggHeadCafe - Software Developer Portal of Choice
Create Multiple Dynamic ASP.NET Datagrids
http://www.eggheadcafe.com/tutorials...dynamic-a.aspx