From: pls123 on 11 May 2010 10:18 i'm sorry, i had to explain that it was correct the order so that if 5 was true it would overwrite any other value.. it was important that if 1 2 and 3 was true it would sign 3.. so the if else should be ok starting from the more prioritarius.. so 5 !! aws was ... Dim aWB As Workbook Dim aWS As Worksheet Set aWB = ThisWorkbook Set aWS = aWB.Worksheets(1) the same sub runs on many worbooks at a time !! paolo "Mike H" wrote: > Hi, > > > if 48 true then 1 end if > > if 49 true then 2 end if > > Is a completely different structure. Doing it that that way each of the IF's > will execute even if the first was TRUE so if they are all TRUE that value in > M80 will be the result of the last if statement. > > I'm no clearer on what the problem is, the code from your first post works > perfectly for me. If for example we have the following set of conditions > > M52=FALSE > M51=FALSE > M50=TRUE > M49=TRUE > M48=TRUE > > then the value in M80 will be 3 and M49 & M48 will not be tested. So for the > above set of conditions what result would you expect? What is Aws? > Mike > > When competing hypotheses are otherwise equal, adopt the hypothesis that > introduces the fewest assumptions while still sufficiently answering the > question. > > > "pls123" wrote: > > > hi mike !! > > the problem is that.. > > i changed the raws of sub like i showed before.. > > ..to make it more efficient for cpu.. > > but it doesn't write the number !!! > > > > before it was without the else... > > like ths.. > > > > if 48 true then 1 end if > > if 49 true then 2 end if > > ....etc ..etc... > > > > > > i have no idea..! > > paolo > > > > > > > > > > > > > > "Mike H" wrote: > > > > > Hi, > > > > > > Well it's doing exactly what your telling it to do: > > > > > > Check in turn M52, M51, M50, M49 & M48 of whatever aWs is and as soon as 1 > > > of those tests evaluates as TRUE put a number in M80. > > > > > > You must be aware that as soon as a condition has evaluated as TRUE then > > > none of the following tests execute > > > > > > so the real question is what do you want it to do? > > > -- > > > Mike > > > > > > When competing hypotheses are otherwise equal, adopt the hypothesis that > > > introduces the fewest assumptions while still sufficiently answering the > > > question. > > > > > > > > > "pls123" wrote: > > > > > > > hello all!! > > > > any reason why this should not work correctly ? ;))) > > > > tx !!! > > > > > > > > > > > > If aWS.Range("M52").Value = True Then > > > > aWS.Range("M80").Value = 5 > > > > Else > > > > If aWS.Range("M51").Value = True Then > > > > aWS.Range("M80").Value = 4 > > > > Else > > > > If aWS.Range("M50").Value = True Then > > > > aWS.Range("M80").Value = 3 > > > > Else > > > > If aWS.Range("M49").Value = True Then > > > > aWS.Range("M80").Value = 2 > > > > Else > > > > If aWS.Range("M48").Value = True Then > > > > aWS.Range("M80").Value = 1 > > > > End If > > > > End If > > > > End If > > > > End If > > > > End If
First
|
Prev
|
Pages: 1 2 Prev: How to close excel worksheet after 15 mins? once it opened Next: Vlookup |