Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Excel / Programming / November 2007

Tip: Looking for answers? Try searching our database.

set cell value

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Edgar - 26 Nov 2007 00:04 GMT
I'm very rusty in Basic and have no Visual Basic experience! I want to use a
function to reset a stop loss target if needed. The spreadsheet has a cell
with “Day’s High” as a dollar value, “Old Stop Loss” also as a dollar value
and I will pass in a float with a stop loss percent (for now—maybe later it
will be a cell value).

I want to pass in a Currency type (daysHigh), a Variant (stopRate, a Float),
and a reference to a cell (oldStop) from which I will derive the old stop
loss value, and after some calculations, possibly change the cell’s value to
the new stop loss value.

I will try this function call:

=ResetStopLoss(AE6, BB6, 0.15)
          thus:
ResetStopLoss(40, 58, .15)

code:

Function ResetStopLoss(oldStop As Range, daysHigh As Currency, stopRate)
'
' reset stop loss target if needed for Fidelity held position
' 24 Nov 2007 by Ed Musgrove
If stopRate = 0 Then GoTo BailOut
potentialNewStop = daysHigh * (1 - stopRate)
oldStopValue = oldStop.Value
' using MsgBox (oldStopValue), I see that the above
' line works, so I know I'm getting a useful Range Object
MsgBox (oldStopValue)
If potentialNewStop > oldStopValue Then
   MsgBox ("in here")
' the above message displays, I know I am getting to here
   oldStop.Value = potentialNewStop
' the following does NOT display, the above line
   MsgBox ("done here")
End If

MsgBox (oldStop.Value)
BailOut:
ResetStopLoss = Date
End Function

Any help will be greatly appreciated!
Signature

-Edgar

JMB - 26 Nov 2007 00:21 GMT
When called from a worksheet, functions can only return values.  They don't
put values into other cells as I believe you are attempting.

> I'm very rusty in Basic and have no Visual Basic experience! I want to use a
> function to reset a stop loss target if needed. The spreadsheet has a cell
[quoted text clipped - 39 lines]
>
> Any help will be greatly appreciated!
Edgar - 26 Nov 2007 03:08 GMT
If I were writing in C++ I could pass the address of the cell and use a
pointer to modify the cell. As I recall, Basic has nothing similar. Does
anyone else have a solution or suggestion?

Signature

-Edgar

> When called from a worksheet, functions can only return values.  They don't
> put values into other cells as I believe you are attempting.
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.