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 / New Users / September 2006

Tip: Looking for answers? Try searching our database.

Code returns TRUE instead of value

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
loren.pottinger - 05 Sep 2006 15:22 GMT
Essentially what I am trying to do is this:

I am trying to calculate depreciation.

I use the DateAdd function to add x number of months(Cell "F & Row that
is active")  to the acquisition date(Cell "H & Row that is active" of
an asset.

If the sum of those dates is greater than the End of life (Cell "I &
Row that is active")  of that asset then there is a payment for that
month and the value in Range("K" & Row) is place in the active cell
until the entire cell range from M7 to AC63 is filled.

If the sum of those dates is not greater the End of life (Cell "I & Row
that is active")  of that asset then a value of zero is place in that
cell.

In either case the value in (Cell "F & Row that is active")
decremented by 1 for the next time the loop is run.

It runs, and the range is being filled, but there is not supposed to be
a payment for every cell in the range. There are no zeros for when the
condition is false.

Additionally, the entire Column "M" only has the word TRUE and not a
numerical value. My macro is as follows. Please help.

Sub Fill()

   Dim TestDate As Date
   Dim Col As Integer
   Dim Row As Long

       For Col = 13 To 29
           For Row = 7 To 63

               TestDate = DateAdd("m", Range("F" & Row), _
               Range("H" & Row))

                   If TestDate < Range("I" & Row) Then

                   Range("K" & Row).Copy
                   Cells(Row, Col) = Range("K" & Row)
                   Range("F" & Row).Value = Range("F" & Row).Value - 1

                   Else
                   Cells(Row, Col) = ActiveCell.Value = 0
                   Range("F" & Row).Value = Range("F" & Row).Value - 1
                   End If
               
           Next Row
       Next Col
End Sub
Earl Kiosterud - 05 Sep 2006 16:16 GMT
Loren,

Cells(Row, Col) = ActiveCell.Value = 0

In this statement, ActiveCell.Value = 0 is a boolean expression, which
evaluates to TRUE or FALSE (it is or it ain't true).  So the statement
becomes:

Cells(Row, Col) = TRUE
or
Cells(Row, Col) = FALSE

So the cell gets the boolean value TRUE or FALSE stuck into it.

Signature

Earl Kiosterud
www.smokeylake.com
-----------------------------------------------------------------------

> Essentially what I am trying to do is this:
>
[quoted text clipped - 49 lines]
>        Next Col
> End Sub
Dave Peterson - 05 Sep 2006 17:20 GMT
You have several replies to your several posts.

Please don't multipost.

> Essentially what I am trying to do is this:
>
[quoted text clipped - 49 lines]
>         Next Col
> End Sub

Signature

Dave Peterson


Rate this thread:






 
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.