Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
How do I search through a dynamic range in one column and for each instance
the word total appears insert a formula into the cell next to it? Thanks in advance |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
This assumes you are searching column A. Right click your sheet tab, view code and paste this in and run it. You didn't say what formula so substitute your own. Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If UCase(c.Value) = "TOTAL" Then c.Offset(, 1).Formula = "=22/7" End If Next End Sub Mike "Enyaw" wrote: How do I search through a dynamic range in one column and for each instance the word total appears insert a formula into the cell next to it? Thanks in advance |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
That worked Mike. Thanks. One more thing. What if total is only part of
the cell value. How do i search for that? "Mike H" wrote: Hi, This assumes you are searching column A. Right click your sheet tab, view code and paste this in and run it. You didn't say what formula so substitute your own. Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If UCase(c.Value) = "TOTAL" Then c.Offset(, 1).Formula = "=22/7" End If Next End Sub Mike "Enyaw" wrote: How do I search through a dynamic range in one column and for each instance the word total appears insert a formula into the cell next to it? Thanks in advance |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
use this Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If InStr(UCase(c.Value), "TOTAL") = 0 Then sumrows = sumrows + 1 Else c.Offset(, 1).Formula = "=sum(B" & c.Row - sumrows & ":B" & c.Row - 1 & ")" sumrows = 0 End If Next End Sub Mike "Enyaw" wrote: That worked Mike. Thanks. One more thing. What if total is only part of the cell value. How do i search for that? "Mike H" wrote: Hi, This assumes you are searching column A. Right click your sheet tab, view code and paste this in and run it. You didn't say what formula so substitute your own. Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If UCase(c.Value) = "TOTAL" Then c.Offset(, 1).Formula = "=22/7" End If Next End Sub Mike "Enyaw" wrote: How do I search through a dynamic range in one column and for each instance the word total appears insert a formula into the cell next to it? Thanks in advance |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
Apologies I sent you a version I was playing with that inserted a formula that summed column B up to the last time total appared in column A so ignore and use this Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If InStr(UCase(c.Value), "TOTAL") 0 Then c.Offset(, 1).Formula = "=22/7" End If Next End Sub Mike "Mike H" wrote: Hi, use this Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If InStr(UCase(c.Value), "TOTAL") = 0 Then sumrows = sumrows + 1 Else c.Offset(, 1).Formula = "=sum(B" & c.Row - sumrows & ":B" & c.Row - 1 & ")" sumrows = 0 End If Next End Sub Mike "Enyaw" wrote: That worked Mike. Thanks. One more thing. What if total is only part of the cell value. How do i search for that? "Mike H" wrote: Hi, This assumes you are searching column A. Right click your sheet tab, view code and paste this in and run it. You didn't say what formula so substitute your own. Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If UCase(c.Value) = "TOTAL" Then c.Offset(, 1).Formula = "=22/7" End If Next End Sub Mike "Enyaw" wrote: How do I search through a dynamic range in one column and for each instance the word total appears insert a formula into the cell next to it? Thanks in advance |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks Mike
"Mike H" wrote: Hi, Apologies I sent you a version I was playing with that inserted a formula that summed column B up to the last time total appared in column A so ignore and use this Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If InStr(UCase(c.Value), "TOTAL") 0 Then c.Offset(, 1).Formula = "=22/7" End If Next End Sub Mike "Mike H" wrote: Hi, use this Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If InStr(UCase(c.Value), "TOTAL") = 0 Then sumrows = sumrows + 1 Else c.Offset(, 1).Formula = "=sum(B" & c.Row - sumrows & ":B" & c.Row - 1 & ")" sumrows = 0 End If Next End Sub Mike "Enyaw" wrote: That worked Mike. Thanks. One more thing. What if total is only part of the cell value. How do i search for that? "Mike H" wrote: Hi, This assumes you are searching column A. Right click your sheet tab, view code and paste this in and run it. You didn't say what formula so substitute your own. Sub stantial() Dim MyRange As Range Lastrow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Set MyRange = Range("A1:A" & Lastrow) For Each c In MyRange If UCase(c.Value) = "TOTAL" Then c.Offset(, 1).Formula = "=22/7" End If Next End Sub Mike "Enyaw" wrote: How do I search through a dynamic range in one column and for each instance the word total appears insert a formula into the cell next to it? Thanks in advance |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
One way:
Const csFIND As String = "*total*" Const csFORM As String = "<your formula" Dim rCell As Range For Each rCell In <your dynamic range here With rCell If LCase(.Text) Like csFIND Then _ .Offset(0, 1).Formula = csFORM End With Next rCell In article , Enyaw wrote: How do I search through a dynamic range in one column and for each instance the word total appears insert a formula into the cell next to it? Thanks in advance |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Formula in a cell depending on the value of another cell | Excel Discussion (Misc queries) | |||
Formula to display text depending upon date entered in a cell | Excel Worksheet Functions | |||
Seperate formula depending on cell used | Excel Discussion (Misc queries) | |||
Value or formula in cell depending on input... | Excel Programming |