View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
Yogi_Bear_79 Yogi_Bear_79 is offline
external usenet poster
 
Posts: 28
Default Revisited: If Cell in row has data then do this: HELP

Thanks..Changing rng to Cells did the trick



"acw" wrote in message
...
Hi

Try this. If the range F1:F4 has a,b,c,d and G1:G4 has e,f,g,h and I1:I4

is 1,2,3,4 the output will be
F1:F4 ae, bf, cg, dh and G1:G4 1,2,3,4 and I1:I4 blank.


Tony
Sub bbb()
Dim rng As Range, cell As Range
Set rng = Range(Cells(1, "I"), Cells(Rows.Count, "I").End(xlUp))
For Each cell In rng
If Not IsEmpty(cell) Then
Cells(cell.Row, "F").Value = Cells(cell.Row, "F").Value _
& Cells(cell.Row, "G").Value
Cells(cell.Row, "G").Value = cell
cell.ClearContents
End If
Next

End Sub

----- Yogi_Bear_79 wrote: -----

Code doesn't seemto be working;
At first I thought it was working, then I noticed all it was

doing was
clearing the contents of the cells in column I

When I comment out these two lines nothing happens at all:

cells(rng.row,"G").Value = cell
cell.Clearcontents

Now I fI understood the code corrctly, editing out those two lines

should
still allow F&G to concatanate. Which they are currently not


Actually,

I've found that it does work sort of:
It concatanates only F1&G1. Funny thing is it does it for as many

cells in
column I that do have data so as an example:

F1 = Hello
G1 = World

Column I has 4 cells that contain data
nowF1 = Hello World World World World

"Tom Ogilvy" wrote in message
...
Dim rng as Range, cell as Range
set rng = Range(Cells(1,"I"),Cells(rows.count,"I").End(xlup)
for each cell in rng
if not isempty(cell) then
cells(rng.row,"F").Value = cells(rng.row,"F").Value _
& cels(rng.row,"G").Value
cells(rng.row,"G").Value = cell
cell.Clearcontents
end if
Next
This would replace a formula if it is in one of the cells being

manipulated,
so the assumption is that the cells do not contain formulas.
--

Regards,
Tom Ogilvy
"Yogi_Bear_79" wrote in message

...
If column I has data in it I want Excel to perform the following.
1. Concatanate the data in the coresponding row column G to the

end of
the
data in the coresponding row in column F
2. Move the data from column I to the coresponding cell in the

same row
in
column G