C
Carrie_Loos via OfficeKB.com
Hi - I have a spreadsheet with several columns with dynamic ranges. Dynamic
CID range example: =Log!$N$5:INDEX(Log!$N:$N,SerialNbrs). The worksheet will
be updated each day, too big to keep formula's in it. So I want to find each
range that I have created, if a cell is empty, update it with the formula and
move down the range until the end of the range then move on to the next range.
I'm really stuck trying to get the macro to identify the range. Here is the
beginning....Help!
Sub FindNewInfo()
Dim CID As Range
For Each cell In Range("CID")
If IsEmpty(cell) Then
ActiveCell.FormulaR1C1 = _
"=INDEX('Daily Data'!C[-13]:C[-9],MATCH(Log!RC[-1],'Daily Data'!C[-13]
:C[-9],0),5)"
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
ActiveCell.Replace What:="#N/A", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Find(What:="#N/A", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=
_
False, SearchFormat:=False).Activate
End If
Next
End Sub
CID range example: =Log!$N$5:INDEX(Log!$N:$N,SerialNbrs). The worksheet will
be updated each day, too big to keep formula's in it. So I want to find each
range that I have created, if a cell is empty, update it with the formula and
move down the range until the end of the range then move on to the next range.
I'm really stuck trying to get the macro to identify the range. Here is the
beginning....Help!
Sub FindNewInfo()
Dim CID As Range
For Each cell In Range("CID")
If IsEmpty(cell) Then
ActiveCell.FormulaR1C1 = _
"=INDEX('Daily Data'!C[-13]:C[-9],MATCH(Log!RC[-1],'Daily Data'!C[-13]
:C[-9],0),5)"
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
ActiveCell.Replace What:="#N/A", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Find(What:="#N/A", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=
_
False, SearchFormat:=False).Activate
End If
Next
End Sub