How to zero out non-contiguous ranges
Yes, I took Tom's out of context. The point of the subroutine is to hide
some rows but, first, to make sure all their inputs are zero. That's why I
have them together. I would never do the 2nd without the first. I know
you experts think this is bad technique! Sorry.
One other thing, while I'm here. This is a question about EXCEL, not
macros. Seemingly all of a sudden (though probably not), I am noticing that
most of my inputs that are zero are showing as blank which, often, I'd
rather not be the case - I'd like to see the zero, or 0%. I checked the
usual suspects, such as conditional formatting, white fonts,
protection-hidden but none were the cause. It seems that this is simply the
default of some of EXCEL's common formats, such as integer and percent.
Somehow, I don't remember such being the case, but I am probably just losing
it! Though I know I can use custom formats, I don't like to deal with them
any more than necessary and so I ask: If what I suggested above is true, is
there a way to change EXCEL's simple formats, the kind that have those
clickable buttons?
Macro works nice now.
Thanks!
Dean
"Bill Renaud" wrote in message
. ..
Hi Dean,
Yes, the problems with mixing code from 2 different authors! Tom did not
declare his variables, and I always use "Option Explicit" at the top of my
code modules, so that is what is producing the "variable not defined
error". The variable "cell" was from his code, which was not defined in my
routine.
Try this version for the Clear routine. It sets the value of the unlocked
cells to zero, rather than clearing each cell. Using ClearContents clears
the cell of all formulas and values, so it will be blank just like a new
worksheet.
Public Sub ClearAandDLoanDrawPercents()
Dim rngCellsToClear As Range
Dim rngCell As Range
Set rngCellsToClear = ThisWorkbook _
.Names("AandDLoanDrawPercents") _
.RefersToRange
For Each rngCell In rngCellsToClear
With rngCell
If Not .Locked Then .Value = 0
End With
Next rngCell
End Sub
I think "Hide_AandD_Rows" should be a separate routine. I don't quite
understand that part yet.
--
Regards,
Bill Renaud
|