Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Excel / General Excel Questions / July 2009

Tip: Looking for answers? Try searching our database.

Macro Fill Cells With Formula; Conditional To Seperate Column

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
CVinje - 04 Jul 2009 11:50 GMT
I'm working on a spreadsheet where certain cells in columns need to be filled
with a formula, but only if cells in the same corresponding row from a
different column meet certain criteria. Example:

__|L__|M__|N__|O__|P__|Q__|R__|......|W__|
08|___|___|___|____|___|___|___|......|Condition|                            
09|___|___|___|____|___|___|___|......|Condition|
10|___|___|___|____|___|___|___|......|Condition|
11|___|___|___|____|___|___|___|......|Condition|
etc

Here's what I'd want to happen. If the condition in cell W8 is met, then
fill cell L8 with "Formula X". If it is not met, leave the cell alone (skip
and do not change contents). The condition is a text entry of "D1" (will
vary) in cell W8, if that's there, fill the cell with "Formula X", if not,
don't change a thing. I'd need this to happen from row 08 down until there
are no more entries in the W column. Each column would have its own macro - I
should be able to understand enough to change a single macro written for
column "L" as needed so there's no need to reply with multiple, unique,
macros for each column.

I located this solution to an old problem, but was unable to find the
example spreadsheet the user posted (expired link).

Sub CondAutofill()
Set rng = Range(Range("B4"), _
Cells(Rows.Count, 2).End(xlUp))
For Each cell In rng
 If Not IsEmpty(cell) And _
  InStr(1, cell.Value, "total", _
  vbTextCompare) = 0 Then
       Range("D3").Copy cell.Offset(0, 2)
 End If
Next
End Sub

This does accomplish close to what I need; however, I lack the knowledge to
modify it properly to meet my needs.

Thanks,

CVinje
Mike H - 04 Jul 2009 12:18 GMT
Hi,

Try this. It read form W8 to the last row in column w and populates column L
if it finds a match to D1

Sub sonic()
Dim MyRange As Range, MyText As String
MyText = Range("D1").Value
LastRow = Cells(Rows.Count, "W").End(xlUp).Row
Set MyRange = Range("W8:W" & LastRow)
For Each c In MyRange
   If c.Value = MyText Then
       c.Offset(, -11).Value = "Something"
   End If
Next
End Sub

Mike

> I'm working on a spreadsheet where certain cells in columns need to be filled
> with a formula, but only if cells in the same corresponding row from a
[quoted text clipped - 38 lines]
>
> CVinje
CVinje - 04 Jul 2009 13:10 GMT
The posted code works - just had to modify the part where it filled the cell
with "value = ..." to handle entering a formula. Thanks very much for your
help!!
Mike H - 04 Jul 2009 13:17 GMT
Glad I could help and thanks for the feedback

> The posted code works - just had to modify the part where it filled the cell
> with "value = ..." to handle entering a formula. Thanks very much for your
> help!!
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2010 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.