Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.worksheet.functions
|
|||
|
|||
![]()
Hi,
I'm trying to add some formulas with a macro. With the first I want the value of "D2" to be "XXX" if the 3 left characters of cell "C2" are "YYY" but I'm not sure of the correct syntax. This is what I have so far: If Left.Range("c2", 3) = "095" Then .Range("D" & 2).Value = "ZB900" ..Range("D" & 2).Copy _ Destination:=.Range("D" & 2 & ":D" & lstrw) In this next case I'm trying to load the formula: ..Range("E" & 2).Formula = "=("0"&right(c2,4))" but I keep getting an error. Any ideas? |
#2
![]()
Posted to microsoft.public.excel.worksheet.functions
|
|||
|
|||
![]()
Do you want the macro to produce a formula that does the work or do you want the
macro to do the work? If a formula: with worksheets("Sheet9999") '<--what sheet??? .range("d2").formular1c1 _ = "=if(right(rc[-1],3)=""yyy"",""xxx"","""")" end with If you want the macro to do the work: with worksheets("Sheet9999") if lcase(right(.range("c2").value,3)) = "yyy" then .range("d2").value = "XXX" else .range("D2").value = "" end if end with I chose to make the cell look empty if the criterion wasn't met. I'm not sure that's what you wanted. ===== And try this: .Range("E" & 2).Formula = "=(""0""&right(c2,4))" Notice how the double quotes in strings in formulas in your code are doubled up. mattg wrote: Hi, I'm trying to add some formulas with a macro. With the first I want the value of "D2" to be "XXX" if the 3 left characters of cell "C2" are "YYY" but I'm not sure of the correct syntax. This is what I have so far: If Left.Range("c2", 3) = "095" Then .Range("D" & 2).Value = "ZB900" .Range("D" & 2).Copy _ Destination:=.Range("D" & 2 & ":D" & lstrw) In this next case I'm trying to load the formula: .Range("E" & 2).Formula = "=("0"&right(c2,4))" but I keep getting an error. Any ideas? -- Dave Peterson |
#3
![]()
Posted to microsoft.public.excel.worksheet.functions
|
|||
|
|||
![]()
I went with option 2 for the first macro and it worked great. The fix on the
second formula work also. Thanks!!!! "Dave Peterson" wrote: Do you want the macro to produce a formula that does the work or do you want the macro to do the work? If a formula: with worksheets("Sheet9999") '<--what sheet??? .range("d2").formular1c1 _ = "=if(right(rc[-1],3)=""yyy"",""xxx"","""")" end with If you want the macro to do the work: with worksheets("Sheet9999") if lcase(right(.range("c2").value,3)) = "yyy" then .range("d2").value = "XXX" else .range("D2").value = "" end if end with I chose to make the cell look empty if the criterion wasn't met. I'm not sure that's what you wanted. ===== And try this: .Range("E" & 2).Formula = "=(""0""&right(c2,4))" Notice how the double quotes in strings in formulas in your code are doubled up. mattg wrote: Hi, I'm trying to add some formulas with a macro. With the first I want the value of "D2" to be "XXX" if the 3 left characters of cell "C2" are "YYY" but I'm not sure of the correct syntax. This is what I have so far: If Left.Range("c2", 3) = "095" Then .Range("D" & 2).Value = "ZB900" .Range("D" & 2).Copy _ Destination:=.Range("D" & 2 & ":D" & lstrw) In this next case I'm trying to load the formula: .Range("E" & 2).Formula = "=("0"&right(c2,4))" but I keep getting an error. Any ideas? -- Dave Peterson |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Adding next row of formulas | New Users to Excel | |||
Adding formulas | Excel Discussion (Misc queries) | |||
Adding formulas | Excel Worksheet Functions | |||
Why are my formulas not adding up automatically | Excel Worksheet Functions | |||
Adding rows in between formulas | Excel Worksheet Functions |