Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Frantic Excel-er
 
Posts: n/a
Default Repeat statements "x" number of times...

Hi All,

I have the following code at the end of a long macro:

Columns("D:D").Find(What:="total").Select
ActiveCell.Offset(0, 4).Range("A1").Select
ActiveCell.FormulaR1C1 = "=Sum(RC[-1]-RC[-2])"
ActiveCell.NumberFormat = "0.00"
ActiveCell.Font.Bold = True
With ActiveCell.Interior
.ColorIndex = 6
End With

What I am doing is when the word "total" appears, it will go to the cell 4
columns to the right, and then do a formula and format the cell.

Question: How can I get this to repeat itself for each time the word
"total" appears. Each different time I run this macro, I may have anywhere
from 1 to 100 totals in the respective worksheet. I think that I need to
either loop, or do a for..next statement, but I don't know how to get the
syntax right, or which would work better.

Any help would be greatly appreciated...thanks in advance...

Sara
  #2   Report Post  
Bernie Deitrick
 
Posts: n/a
Default

No need to repeat the statements, just need to find all the values first.

HTH,
Bernie
MS Excel MVP

Sub FindValues()
Dim c As Range
Dim d As Range
Dim firstAddress As String

'First, find all the cells
With Cells

Set c = .Find("Total", LookIn:=xlValues, lookAt:=xlWhole)

If Not c Is Nothing Then
Set d = c
firstAddress = c.Address
Else:
MsgBox "Not Found"
End
End If

Set c = .FindNext(c)
If Not c Is Nothing And c.Address < firstAddress Then
Do
Set d = Union(d, c)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address < firstAddress
End If
End With

' Then do what you want with the offset of
' all the cells that have been found:
With d.Offset(0, 4)
.FormulaR1C1 = "=Sum(RC[-1]-RC[-2])"
.NumberFormat = "0.00"
.Font.Bold = True
With .Interior
.ColorIndex = 6
End With
End With

End Sub


"Frantic Excel-er" wrote in
message ...
Hi All,

I have the following code at the end of a long macro:

Columns("D:D").Find(What:="total").Select
ActiveCell.Offset(0, 4).Range("A1").Select
ActiveCell.FormulaR1C1 = "=Sum(RC[-1]-RC[-2])"
ActiveCell.NumberFormat = "0.00"
ActiveCell.Font.Bold = True
With ActiveCell.Interior
.ColorIndex = 6
End With

What I am doing is when the word "total" appears, it will go to the cell 4
columns to the right, and then do a formula and format the cell.

Question: How can I get this to repeat itself for each time the word
"total" appears. Each different time I run this macro, I may have

anywhere
from 1 to 100 totals in the respective worksheet. I think that I need to
either loop, or do a for..next statement, but I don't know how to get the
syntax right, or which would work better.

Any help would be greatly appreciated...thanks in advance...

Sara



  #3   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

Bernie,

This isn't working...it is popping up the box and saying not found....

"Bernie Deitrick" wrote:

No need to repeat the statements, just need to find all the values first.

HTH,
Bernie
MS Excel MVP

Sub FindValues()
Dim c As Range
Dim d As Range
Dim firstAddress As String

'First, find all the cells
With Cells

Set c = .Find("Total", LookIn:=xlValues, lookAt:=xlWhole)

If Not c Is Nothing Then
Set d = c
firstAddress = c.Address
Else:
MsgBox "Not Found"
End
End If

Set c = .FindNext(c)
If Not c Is Nothing And c.Address < firstAddress Then
Do
Set d = Union(d, c)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address < firstAddress
End If
End With

' Then do what you want with the offset of
' all the cells that have been found:
With d.Offset(0, 4)
.FormulaR1C1 = "=Sum(RC[-1]-RC[-2])"
.NumberFormat = "0.00"
.Font.Bold = True
With .Interior
.ColorIndex = 6
End With
End With

End Sub


"Frantic Excel-er" wrote in
message ...
Hi All,

I have the following code at the end of a long macro:

Columns("D:D").Find(What:="total").Select
ActiveCell.Offset(0, 4).Range("A1").Select
ActiveCell.FormulaR1C1 = "=Sum(RC[-1]-RC[-2])"
ActiveCell.NumberFormat = "0.00"
ActiveCell.Font.Bold = True
With ActiveCell.Interior
.ColorIndex = 6
End With

What I am doing is when the word "total" appears, it will go to the cell 4
columns to the right, and then do a formula and format the cell.

Question: How can I get this to repeat itself for each time the word
"total" appears. Each different time I run this macro, I may have

anywhere
from 1 to 100 totals in the respective worksheet. I think that I need to
either loop, or do a for..next statement, but I don't know how to get the
syntax right, or which would work better.

Any help would be greatly appreciated...thanks in advance...

Sara




  #4   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

Bernie...

I think I figured it out....I changed the .find....xlwhole to
..find.....xlpart...because the totals have fiscal years in front of
them...i.e. F05 total...


The only question I have now is I only want it to look in column D for this,
not the whole document because there might be the word "total in other
columns....

"Frantic Excel-er" wrote:

Bernie,

This isn't working...it is popping up the box and saying not found....

"Bernie Deitrick" wrote:

No need to repeat the statements, just need to find all the values first.

HTH,
Bernie
MS Excel MVP

Sub FindValues()
Dim c As Range
Dim d As Range
Dim firstAddress As String

'First, find all the cells
With Cells

Set c = .Find("Total", LookIn:=xlValues, lookAt:=xlWhole)

If Not c Is Nothing Then
Set d = c
firstAddress = c.Address
Else:
MsgBox "Not Found"
End
End If

Set c = .FindNext(c)
If Not c Is Nothing And c.Address < firstAddress Then
Do
Set d = Union(d, c)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address < firstAddress
End If
End With

' Then do what you want with the offset of
' all the cells that have been found:
With d.Offset(0, 4)
.FormulaR1C1 = "=Sum(RC[-1]-RC[-2])"
.NumberFormat = "0.00"
.Font.Bold = True
With .Interior
.ColorIndex = 6
End With
End With

End Sub


"Frantic Excel-er" wrote in
message ...
Hi All,

I have the following code at the end of a long macro:

Columns("D:D").Find(What:="total").Select
ActiveCell.Offset(0, 4).Range("A1").Select
ActiveCell.FormulaR1C1 = "=Sum(RC[-1]-RC[-2])"
ActiveCell.NumberFormat = "0.00"
ActiveCell.Font.Bold = True
With ActiveCell.Interior
.ColorIndex = 6
End With

What I am doing is when the word "total" appears, it will go to the cell 4
columns to the right, and then do a formula and format the cell.

Question: How can I get this to repeat itself for each time the word
"total" appears. Each different time I run this macro, I may have

anywhere
from 1 to 100 totals in the respective worksheet. I think that I need to
either loop, or do a for..next statement, but I don't know how to get the
syntax right, or which would work better.

Any help would be greatly appreciated...thanks in advance...

Sara




  #5   Report Post  
Bernie Deitrick
 
Posts: n/a
Default

Change

With Cells

to

With Rand("D:D")


HTH,
Bernie
MS Excel MVP

The only question I have now is I only want it to look in column D for

this,
not the whole document because there might be the word "total in other
columns....





  #6   Report Post  
Bernie Deitrick
 
Posts: n/a
Default

Yikes! How did that happen?

With Rand("D:D")

should have been

With Range("D:D")

HTH,
Bernie
MS Excel MVP


"Bernie Deitrick" <deitbe @ consumer dot org wrote in message
...
Change

With Cells

to

With Rand("D:D")


HTH,
Bernie
MS Excel MVP

The only question I have now is I only want it to look in column D for

this,
not the whole document because there might be the word "total in other
columns....





  #7   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

Hi Bernie,

Thanks so much for all the help....The code works great....I can't stop
re-running it just to see it work.....This is very helpful....and also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do that.....

One more question........what would be a good direction to go in to learn
more about visual basic?????

"Bernie Deitrick" wrote:

Yikes! How did that happen?

With Rand("D:D")

should have been

With Range("D:D")

HTH,
Bernie
MS Excel MVP


"Bernie Deitrick" <deitbe @ consumer dot org wrote in message
...
Change

With Cells

to

With Rand("D:D")


HTH,
Bernie
MS Excel MVP

The only question I have now is I only want it to look in column D for

this,
not the whole document because there might be the word "total in other
columns....






  #8   Report Post  
Bernie Deitrick
 
Posts: n/a
Default

Lurk here and read the posts and answers, and read any book in the VBA Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't stop
re-running it just to see it work.....This is very helpful....and also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do that.....

One more question........what would be a good direction to go in to learn
more about visual basic?????



  #9   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

Bernie,

I have some more formatting issues now that pertain to the code you wrote me
in this thread.

I now need to find in column H...all the cells that have a formula response
of #N/A, or "India Only", and I need to highlight those in red. I tried to
copy this code that formatted the other column for me, but it doesn't work -
I get a duplicate compile error. Any suggestions on how I can get these
responses highlighted????

Thanks.

Sara

"Bernie Deitrick" wrote:

Lurk here and read the posts and answers, and read any book in the VBA Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't stop
re-running it just to see it work.....This is very helpful....and also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do that.....

One more question........what would be a good direction to go in to learn
more about visual basic?????




  #10   Report Post  
Bernie Deitrick
 
Posts: n/a
Default

Don't use code, use conditional formatting. Look in help.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in message
...
Bernie,

I have some more formatting issues now that pertain to the code you wrote me
in this thread.

I now need to find in column H...all the cells that have a formula response
of #N/A, or "India Only", and I need to highlight those in red. I tried to
copy this code that formatted the other column for me, but it doesn't work -
I get a duplicate compile error. Any suggestions on how I can get these
responses highlighted????

Thanks.

Sara

"Bernie Deitrick" wrote:

Lurk here and read the posts and answers, and read any book in the VBA Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't stop
re-running it just to see it work.....This is very helpful....and also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do that.....

One more question........what would be a good direction to go in to learn
more about visual basic?????








  #11   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

I tried to use conditional formatting, but it doesn't seem to know that I
want it to look at a formula result....Also, this is the last bit of
formatting that I need to do in order to finish a massive macro that I wrote.
I would like for it to be included in the macro. I have recorded a macro
while doing conditional format, and it looks like this:
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="=$O$146"
Selection.FormatConditions(1).Interior.ColorIndex = 3

the formulas in column H are vlookups with code that looks like this:
With ActiveCell
RowCount = .Offset(0, -1).End(xlDown).Row - .Offset(0, -1).Row + 1
.FormulaR1C1 = _

"=IF(RC[-4]=""C"",VLOOKUP(RC[-3],USB,2,FALSE),VLOOKUP(RC[-3],FAS,2,FALSE))"
.AutoFill .Resize(RowCount)
End With

Not sure how to combine the two.



"Bernie Deitrick" wrote:

Don't use code, use conditional formatting. Look in help.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in message
...
Bernie,

I have some more formatting issues now that pertain to the code you wrote me
in this thread.

I now need to find in column H...all the cells that have a formula response
of #N/A, or "India Only", and I need to highlight those in red. I tried to
copy this code that formatted the other column for me, but it doesn't work -
I get a duplicate compile error. Any suggestions on how I can get these
responses highlighted????

Thanks.

Sara

"Bernie Deitrick" wrote:

Lurk here and read the posts and answers, and read any book in the VBA Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't stop
re-running it just to see it work.....This is very helpful....and also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do that.....

One more question........what would be a good direction to go in to learn
more about visual basic?????






  #12   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

Okay.....I got it to format the "India Only" because that is an actual return
from my vlookup...The "#N/A" I am having trouble with because that is
referring to the account number not being on my vlookup table. I have tried
that several ways, and can't seem to figure that one out....

here is the code I have for the formatting of India only
Range("H:H").Select
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="=""India Only"""
Selection.FormatConditions(1).Interior.ColorIndex = 7


"Bernie Deitrick" wrote:

Don't use code, use conditional formatting. Look in help.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in message
...
Bernie,

I have some more formatting issues now that pertain to the code you wrote me
in this thread.

I now need to find in column H...all the cells that have a formula response
of #N/A, or "India Only", and I need to highlight those in red. I tried to
copy this code that formatted the other column for me, but it doesn't work -
I get a duplicate compile error. Any suggestions on how I can get these
responses highlighted????

Thanks.

Sara

"Bernie Deitrick" wrote:

Lurk here and read the posts and answers, and read any book in the VBA Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't stop
re-running it just to see it work.....This is very helpful....and also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do that.....

One more question........what would be a good direction to go in to learn
more about visual basic?????






  #13   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

Bernie.....help......please......I am really trying hard......I have been at
it for almost 4 hours........going crazy....

Can't figure out how to conditional format when the formula result is
#N/A.....

"Bernie Deitrick" wrote:

Don't use code, use conditional formatting. Look in help.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in message
...
Bernie,

I have some more formatting issues now that pertain to the code you wrote me
in this thread.

I now need to find in column H...all the cells that have a formula response
of #N/A, or "India Only", and I need to highlight those in red. I tried to
copy this code that formatted the other column for me, but it doesn't work -
I get a duplicate compile error. Any suggestions on how I can get these
responses highlighted????

Thanks.

Sara

"Bernie Deitrick" wrote:

Lurk here and read the posts and answers, and read any book in the VBA Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't stop
re-running it just to see it work.....This is very helpful....and also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do that.....

One more question........what would be a good direction to go in to learn
more about visual basic?????






  #14   Report Post  
Bernie Deitrick
 
Posts: n/a
Default

Sorry, Frantic - I went on a short vacation...


Range("H:H").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="=""India Only"""
Selection.FormatConditions(1).Interior.ColorIndex = 7
Selection.FormatConditions.Add Type:=xlExpression,
Formula1:="=ISERROR(H1)"
Selection.FormatConditions(2).Interior.ColorIndex = 7


HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Bernie.....help......please......I am really trying hard......I have been
at
it for almost 4 hours........going crazy....

Can't figure out how to conditional format when the formula result is
#N/A.....

"Bernie Deitrick" wrote:

Don't use code, use conditional formatting. Look in help.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message
...
Bernie,

I have some more formatting issues now that pertain to the code you
wrote me
in this thread.

I now need to find in column H...all the cells that have a formula
response
of #N/A, or "India Only", and I need to highlight those in red. I
tried to
copy this code that formatted the other column for me, but it doesn't
work -
I get a duplicate compile error. Any suggestions on how I can get
these
responses highlighted????

Thanks.

Sara

"Bernie Deitrick" wrote:

Lurk here and read the posts and answers, and read any book in the VBA
Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't
stop
re-running it just to see it work.....This is very helpful....and
also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do
that.....

One more question........what would be a good direction to go in to
learn
more about visual basic?????








  #15   Report Post  
Frantic Excel-er
 
Posts: n/a
Default

Thanks Bernie...

I finally figured it out the other day....

I felt so dumb....the whole time, the formatting wasn't working because I
wasn't in the first cell of the row I was trying to fix....

I do have another question that would be great if you can help with...it is
a separate thread "Macro - message box if find nothing"....Jim Rech was
helping, but he decided I should be able to figure it out on my own, and I am
stuck...If you don't mind reading thru, I would appreciate some input...

Thanks again...

Sara

"Bernie Deitrick" wrote:

Sorry, Frantic - I went on a short vacation...


Range("H:H").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="=""India Only"""
Selection.FormatConditions(1).Interior.ColorIndex = 7
Selection.FormatConditions.Add Type:=xlExpression,
Formula1:="=ISERROR(H1)"
Selection.FormatConditions(2).Interior.ColorIndex = 7


HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Bernie.....help......please......I am really trying hard......I have been
at
it for almost 4 hours........going crazy....

Can't figure out how to conditional format when the formula result is
#N/A.....

"Bernie Deitrick" wrote:

Don't use code, use conditional formatting. Look in help.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message
...
Bernie,

I have some more formatting issues now that pertain to the code you
wrote me
in this thread.

I now need to find in column H...all the cells that have a formula
response
of #N/A, or "India Only", and I need to highlight those in red. I
tried to
copy this code that formatted the other column for me, but it doesn't
work -
I get a duplicate compile error. Any suggestions on how I can get
these
responses highlighted????

Thanks.

Sara

"Bernie Deitrick" wrote:

Lurk here and read the posts and answers, and read any book in the VBA
Power
Programming series by John Walkenbach.

HTH,
Bernie
MS Excel MVP


"Frantic Excel-er" wrote in
message ...
Hi Bernie,

Thanks so much for all the help....The code works great....I can't
stop
re-running it just to see it work.....This is very helpful....and
also,
thanks for the tip on finding the word first, and then executing the
formating steps.....I would have never even known you can do
that.....

One more question........what would be a good direction to go in to
learn
more about visual basic?????









Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Number formatting Fred Holmes Excel Discussion (Misc queries) 2 February 21st 05 06:02 PM
How do I sort a column a unique number? ChelleA Excel Worksheet Functions 7 February 19th 05 10:38 AM
Countif("between start/end times) Ian Jones Excel Discussion (Misc queries) 0 January 6th 05 06:17 PM
Whats the function to count the total times a word is displayed Monk Excel Discussion (Misc queries) 3 December 10th 04 10:39 PM
Convert week number into calendar month? WickyWick Excel Worksheet Functions 2 November 9th 04 09:01 PM


All times are GMT +1. The time now is 08:36 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"