# Use Of Logical Functions

Jun 16, 2006why the following code within a macro does not work

Cells(x,11).Value = If(Or(Cells(x,136)="", Cells(x,134)="","",Cells(x,136)-Cells(x,134))

why the following code within a macro does not work

Cells(x,11).Value = If(Or(Cells(x,136)="", Cells(x,134)="","",Cells(x,136)-Cells(x,134))

ADVERTISEMENT

i had a query regarding a report i have to provide daily. i want the result to be in the form of a number which i pick up from another file.

now there are three colums in this file. one shows the date (i.e. in the ddmmyyyy format, e.g. 5/11/2008). another shows a region (e.g. SOUTHD) and the third shows a number (e.g. 445) of which i have to count how many instances occur for a particular day.

Hence for any given cell in which i would place this formula, i would need the number of times the number 445 occurred from the third column provided the date from the date column was, say, 5th November 2008 and the region was showing as SOUTHD.

pretty sure the COUNTIF function can be used to make such a formula when combined with some logical functions but am unsure on how to do so.

I am having trouble evaluating two conditions with nested logical operators to produce the output I need.

For example Condition 1 has 5 choices (A,B,C,D,E) and Condition 2 has 3 choices (a,b,c).

Breaking it down,

[Condition 1] option "A" always applies and should give "Yes" (No matter [condition 2], "A" always gives "Yes")

[Condition 2] option "c" always applies and should give "Yes" (No matter [condition 1], "c" always gives "Yes")

[Condition 1] option "D" never applies and should give "No" (No matter [condition 2], "D" always gives "No")

[Condition 1] options "C" and "B" only apply if [condition 2] is "b" (if so, the answer is "Yes")

What I need is the equivalent of:

if ((([condition 1] == A) || ([Condition 2] == c)) || (([condition 1] == B || C) && ([condition 2] == b)), "Yes", "No")

I am working on a sheet to retrieve some cells which are not empty or equal to 0. Like..

A B

Item A

Item B 5

Item C 10

Item D

Item E 5

Item F

I want to retrieve only the cells which have got some values in column B. Like I want to get the list as follows

Item B 5

Item C 10

Item E 5

I have to decide if the final answer will be yes or no based on a combination of 4-5 cell values from a single row.

I have attached the details in the excel sheet.

I am trying to create a logical test with three possible results:

h2 <10.2 "needs improvement"

(if false) h2=10.2 "meets standard"

if false h2>10.2 "exceeds standard"

Basically, I am referring to a cell to determine if it meets, exceeds or does not meed a specific standard. In this case 10.2.

I am trying to use an OR in a VBA IF statement. The condtition finds one vale but not the other. Due to the nature of the data, a value is marked either on, off, or both.

I have two seaches in the macro: one looks for on and both, and runs a sub, the other looks for off and both and runs a different sub. However I can't get the both case to run as it should.

If (Cells(i, CurCol).Value = "On") Or (Cells(i, CurCol).Value = "Both") Then

Cells(i, CurCol).Select

I have a spreadsheet wherein I've got a list of names, some of which say (See XXX) where XXX is a number. I've extracted the number to column 2. In column 3 I have another reference number. I essentially want to use column 3's numbers only if there is no value in column 2 (i.e. where there's no "See XXX in the list of names). When there is no value in column 2 I have #VALUE! - but I can't seem to use it in a logical statement. How can I do so? Or is there an easier way to pick between 2 cells?

View 4 Replies View Relatedi have problem with a long code.

So I divided that code in 4 parts.

So I have

module1 -> Sub Macro1()

module2 -> Sub Macro2()

module3 -> Sub Macro3()

module4 -> Sub Macro4()

I have declared

Option Explicit

Dim mdNextTime1 As Double

Dim myEnter As Integer

'Dim myK1 As Integer

'Dim myK2 As Integer

'Dim myK3 As Integer

Dim myK4 As Integer

Const myC As Integer = 82

Dim Lastrow As Integer

Dim myActualRow As Integer

all my sub have the following structure:

I'm trying to meet set criteria in b5 using AND the first works if both conditions are met in two cells but bur won't on one cell?

Private Sub PTIColours_Click()

If Range("b5") > 0 And Range("c5") < 0.149 Then

Range("a5").Interior.ColorIndex = 54

End If

End Sub

But this dosen't

Private Sub PTIColours_Click()

If Range("b5") > 0 And Range("b5") < 0.149 Then

Range("a5").Interior.ColorIndex = 54

End If

End Sub

I have tried searching for a good example of how to use logical operators on Mr Excel however the search is frustrated by "Small Words" in the search field ie IF, AND, NOT ,OR are too short to search.

In column N I have a list of dates. In column Z I want to display either "Yes" where the date in column N has already passed or "No" if the date in column N has not passed. The formula I'm using in column Z is =IF(N2<TODAY(),"Y","N") however it just gives me "No" on every row regardless of whether date is passed or not.

View 11 Replies View RelatedI need a solution for this situtaion! Iam using a french version of excel2003!

I have #DIV/0! in P24 (i.e an error value) So I need to check in Q24 such that if (P24=#DIV/0!,0,P24). I need to have a logical formula for this one!

Under what conditions does a simple logical test, like

View 5 Replies View RelatedI am working on a homework assignment, the books method was crap so I did my own method. I am almost done except for 1 last thing. I cannot find any function that will allow for 3 logical tests. I have a screen shot here explaining what I need to happen.

View 2 Replies View RelatedI inserted the following logical tests for cells E5 and E6. I saved the workbook with SE(B) in cell G3.

View 3 Replies View RelatedHere is the formula I am trying to write:

=IF(A21=(VLOOKUP(XX52,AN24:AN52,0,V38),V45,0)

The above is in cell X45

This does not work, but this is what I want it to do:

I have a list of text, if cell A21 equals a range in that text then I want the cell to return whatever is in Cell V45, if A21 does not equal within the range of text, then I want it to return a zero in cell X45.

You can see that I tried using Vlookup as the logical test, but I am not doing something right or vlookup cant be used that way.

How to find whether a particular cell is blank or is text in a given row/column?

To elaborate more, I have some data in a row:

A B C D E

15 N 16 17 18

I am using a below formula to find whether there is any text in the row

ISTEXT(row(A1:E1)) but I am getting result as False.

How we represent AND OR in a function how many logical sequence can 1 if take

example =if((w4>u4 and v4=0) or (t4>r4 and s4=0);"yes";"no") can excel(2003) accept this , or there is an error in it what is error?

View attached file. I have a complexity rating that I have developed for a set of projects that I am working on. Management of my company have signed off on this matrix as they believe it is most appropriate. In my projects pipeline tab, I have created the risk and complexity ratings using logical commands.

projects.xlsxâ€Ž

How do you do two "if" statements?

I need to have two tests before i get a final result so i need to know the protocal to get two if statements.

I am trying to get more than one outcome from a logical function in a single cell. I am teaching a class and i want this particular cell to add up all the points from tests and quizzes and then give me an outcome of a grade (A,B,C,D, or F) Right now i can only get the cell to give me an outcome of A or B. I need the cell to be able to give me 5 possible outcomes (A,B,C,D,F).

Right now i have this formula in this particular cell......=IF(Q6>234,"A")......so if Q6 is greater than 234pts they get an A...if not they get a B. How can i also give ranges of total points to have the cell give C,D, or F?

When using a IF formula, one answer is false.

Can the word FALSE be changed to a zero?

I am working between two worksheets. In one worksheet I have a list of

account numbers. In the second worksheet I have the same account numbers in

a different order. What I am trying to do is, If the account number from

worksheet one is found in the column with the account numbers in worksheet

two, I want to display the matching title for the account number that is in

the same row but different column in worksheet two.

So essentially (if acct # from column x in wks 1= an acct in number in

column m from wks 2, display the corresponding title in the same row of the

matching acct # found in column m). Is this possible?

I am trying to build a logical formula and it turns wrong values. I have four criteria in numbers, the codes are: 1 invoices, 3 credits, 7 Debits, 8 Returns, 9 Payments. All of these codes have positive numbers. I am trying to convert "credits", "returns", "payments" in negative . the rest "invoices" "debits" stay positive. In column A i have dollar values all positive, column B "codes" mentioned above, column C "i want to put the correct values.

View 9 Replies View RelatedI have a spreadsheet where I have a list of patients who were evaluated on a certain date unique to that patient. Some of the patients have a subsequent date of death, and some do not (they're still alive).

I need to create a logical test which indicates whether or not the patient died at specific intervals after their unique evaluation date-- at 3 months, 6 months, and 12 months. Additionally, I need to measure whether the patient died at 0-6 months, or 0-12 months, or is still alive.

In other words, if Patient A was evaluated on 1/1/2008 and subsequently died on 10/31/2008, I need to do a logical test that says 3 months = false (no death), 6 months = false (no death) and 12 months = true (death). True = 1 and False = 0 (so I can do a simple column add to figure out how many died at each interval). Additionally, for the 0-6 month test it should calculate = 0, but for the 0 - 12 month test it should calculate = 1.

I'm totally stumped as to how to do this. Currently my spreadsheet reads as follows: (I've put ** next to cells that I need formulas to calculate. If no **, assume it's a value I've inputted manually)

A1 = Patient number (numerical order)

B1 = Patient Initials

C1 = Initial Evaluation date

D1 = Date of death (if any- blank if patient is still alive)

E1 = Patient death indicator (1 = dead, 0 = alive)

F1** = Indicate whether or not patient died within 3 months of evaluation (1 = dead, 0 = alive)

G1** = Actual date of death within 3 month interval

H1** = Indicate whether or not patient died within 6 months of evaluation (1 = dead, 0 = alive)

I1** = Actual date of death within 6 month interval

J1** = Indicate whether or not patient died within 12 months of evaluation(1 = dead, 0 = alive)

K1** = Actual date of death within 12 month interval

L1** = Did patient die within 0-6 months of evaluation? (1 = dead, 0 = alive)

M1** = Actual date of death within 0-6 months

N1** = Did patient die within 0-12 months of evaluation? (1 = dead, 0 = alive)

O1** = Actual date of death within 0-12 months

I have following formula that returns #value!

=IF(OR(OFFSET(LIVE_JNL,ROW(5:5),COLUMN(C:D))="",OFFSET(LIVE_JNL,ROW(5:5),

COLUMN(C:D))=0,""),OFFSET(LIVE_JNL,ROW(5:5),COLUMN(C:D)))

Where the value in the cell which is referenced is either blank or zero then blank must be returned, otherwise the value which is being referenced by the offset formula.

what was wrong with this formula, an error message comes up saying VALUE, im trying to get the formula to say that - If 2 dates are different then subtract one from the other to get a number of working days, but if the dates are both the same then to -1 from the value as for some reason the value is coming back as 2 when it should be 0?

=IF(OR(M17>0,N17>0),NETWORKDAYS(M17,N17,holidays)+1+Q17,IF(OR(M17=N17),NETWORKDAYS(M17,N17,holidays)-1,0))

I have data in column A. The data contains a name, an underscore and initial/s. For example: rebecca_rt, john_j, etc... I'm trying to pull only the characters to the right of the underscore. I played around with the below formula that I found under a similar question thread. But, it doesn't quite work. As it is now, it returns ecca_rt when I just want rt. I'm sure this is probably really close =IF(ISERROR( FIND("_",A1)),A1,RIGHT(A1,FIND("_",A1)-1))

View 3 Replies View RelatedI am aware of the following topic in the VBA Help file:

"Using Microsoft Excel Worksheet Functions in Visual Basic

You can use most Microsoft Excel worksheet functions in your Visual Basic statements. To see a list of the worksheet functions you can use, see List of Worksheet Functions Available to Visual Basic.

Note Some worksheet functions aren’t useful in Visual Basic. For example, the Concatenate function isn’t needed because in Visual Basic you can use the & operator to join multiple text values."

And I'm aware of how to call Excel funcitons from within VBA; e.g., answer = Application.WorksheetFunction.Min(myRange)

However, not only are some Excel functions not useful; the fact is they cannot be used because VBA has a native function that does exactly the same thing and you have to use that native VBA function to achieve your goal. It is these overlapping functions that I am especially interested in. I want to know what I should use directly in VBA and what I need to go to Excel for.

My logical test is =IF("D2"="E2",1,2). When I autofill or copy down, the row numbers do not change to "D3"="E3", etc. How do I delineate text and also have the ability for autofill or copy to change the rows as it goes?

View 2 Replies View Related
Copyrights 2005-15 www.BigResource.com, All rights reserved