Using the IF function with a range of numbers

I am working with the IF function and trying to get it to work "if" the number I'm examining is within a range of numbers.
Example:
If a wigit costs between $1000 and $1999, then a discount of $100 is given
If a wigit costs between $2000 and $2999, then a discount of $150 is given
If a wigit costs between $3000 and $3999, then a discount of $225 is given
And so on.
If cell A1 always holds the current cost of the wigit being sold.
cell B1,B2,B3 holds the value of the discount values respectively.
In cell C1 I would like to return what the current discount value is to be given for the wigit price in cell A1?
How do I do this using the IF function or is there another way?
Thanks,
Ryan

HI Ryan,
In this post you have, except for the issue noted by Badunit, the basis for the discount table described by Wayne:
I'm trying to devise a way of knowing what Cash Card a customer will receive depending on the amount of the purchase, based on the following table:
$0         to $999 purchase         =      $50 Cash Card
$1,000 to $1,999 purchase     =     $100 Cash Card
$2,000 to $2,999 purchase      =     $200 Cash Card
$3,000 to $3,999 purchase      =      $300 Cash Card
$4,000 to $4,999 purchase      =      $400 Cash Card
$5,000 to $5,999 purchase      =     $550 Cash Card
$6,000 to $6,999 purchase     =      $700 Cash Card
$7,000 to $7,999 purchase      =     $850 Cash Card
$8,000 to $8,999 purchase     =      $1,000 Cash Card
$9,000 to $9,999 purchase     =     $1,200 Cash Card
$10,000 to   UP   purchase     =     $1,500 Cash Card 
To take care of the issue noted by Badunit, you need to revise the top line to state the minimum purchase necessary to earn a cash card, then add a line above that to handle purchases under that amount. I've arbitrarily chosen a $500 minimum, which results in these two lines:
$0             to $499 purchase        =      $0 Cash Card
$500         to $999 purchase         =      $50 Cash Card
To write this as Wayne's table, you need to remove all of the text (including the $ currency markers), the top end of each range, and the = sign. What you're left with is two columns of numbers: The bottom number of each range of values, and the number telling the dollar amount of the cash card for that range. Here's your table, edited to make it work with LOOKUP:
Here is a second table (Main), containing only the labels and the two cells involved in the calculation of the cash card amount. The Purchase amount is the amount used in your example. The Cash Card amount is produced by the LOOKUP formula below the image.
Purchase price is in cell B1 of the table "Main". The LOOKUP formula is in B2:
B2: =LOOKUP(B1,CC Amt :: A,CC Amt :: B)
LOOKUP acts essentially as you request in your post containing the iPad image with the time shown as 1:46. But it takes a much simpler approach.
Here's the syntax:
LOOKUP(search-for,search-where,return-from)
LOOKUP gets the search-for value (2535) from cell B1.
It looks in column A of the table "CC Amt" for the largest value less than or equal to the search-for value, and finds 2000.
It returns the value from the same line of column B (200).
Below are two more examples. Main-2 and Main-3 are copies of the Main table. Both contain exactly the same formula as Main, but have had a different Purchase price amount entered. LOOKUP uses the same CC Amt table as is used above, and returns the appropriate Cash Card value for each of the two new amounts:
You may, as implied in your 1:46 post, use a pair of cells to calculate the Cash Card amount for each widget in the purchase, then total the Cash Card amounts, or you may use a single pair of cells, one containing the total purchase amount, the other containing the Cash Card amount due for that total. That choice is yours. The formula is the same for either case.
Regards,
Barry

Similar Messages

  • Need help using the "skatter" function with brushes.

    I'm using Photoshop 7 right now. I want to use the scatter function with one of the standard brushes to make a star trail, but the problem is that the stars are too thick, there's too many of them. How do I tell it to draw less instances of the brush when I'm in scatter mode? So that it's only dropping 5 at a time or so?

    I have a control bar for "Master Diameter" but I can't find anything that says "spacing."

  • How do i lock all fields without using the signature function with adobe lifecycle designer 9

    How do i lock all fields without using the signature function with adobe lifecycle designer 9 ...
    I want it to have the same affect as when a signature is used but not use that function. I want a button that says lock all fields. And then you can click it again to unlock all fields...
    Thanks

    Here you go!
    LOCK the form once its SAVEd?

  • How do I find out what year my MacBook Pro is?  I want to know if I can use the mirroring function with my Apple TV if I download Mountain Lion.

    I'm trying to find out if I can use the mirror function to look at large construction drawings using my Apple TV.  It says that my MacBook Pro has to be early 2011 or newer and I can't remember what it is.

    Mactracker - Get Info on any Mac

  • Using the Capture function with a Capture Card

    I was wondering why I can't get premiere to recognize my capture card when I try to use the capture function.

    Ah, then you are out of luck. Premiere only captures via firewire.
    If your camera has usb then copy content of memory or card to hard disk then import into Premiere.

  • Why can't i use the ftp functions with a built file

    I have created a report program that connects to an MS Access database and generates a series of reports from it. i also wanted to give the user the ability to download the database. we haev the database stored on a server at a different building. i have used the labview FTP function in the internet tool kit. the program works fine in the development mode. however if i build an application the ftp call fails to work. i have added traps so that if i get an error i will know it. unfortunatly the program flows through with no errors but the database is not copied.
    i have also written an ftp function which works in the development mode and the application mode with no installer, but it does not work in the apli
    cation mode with an installer.
    Attachments:
    test_ftp.vi ‏28 KB
    shawns_ftp_get_files.vi ‏71 KB

    Well once again I find myself on a machine that will not let be take a look.
    I am glad to here that you have your app running.
    I am troubled by by the solution. It makes me nervous when functions behave differently in the two environments. Have you run this past NI support?
    I'll email myself this link as a reminder for monday.
    Thank you for the update.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • How to use the sharing function with other pc on the Finder sidebar?

    I discver my housemates' pc's names under "sharing" on the Finder sidebar. We all use the same wifi network at home.  Neither they nor I have enabled anything so I'm just wondering what is that for and where am I able to control sharing options?
    Also I can even access their iTunes libraries. How do these all work? Am I able to set any security options at all?

    On the doc page (this is also in the download package),
    http://download.oracle.com/docs/cd/E17277_02/html/index.html
    see:
    Getting Started Guide
    Java Collections Tutorial
    Direct Persistence Layer (DPL)
    All of these describe how to use data types other than byte arrays.
    --mark                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Using the "fit" function with "mFct" ?

    having a problem with declaring a function and using it in a nonlinear least squares fit:
    function Fit5(a,x,y)
    rslt5 = a[1]*(2.0*besselj(sqrt(.....;
    return rslt5;
    end function;
    [a, res1, q1, qVar1] = fit(g, Top_data, fit5, guess,,,iterMax,w,rho );
    getting the following error message:
    is not a valid signature for the function"fit"

    having a problem with declaring a function and using it in a nonlinear least squares fit:
    function Fit5(a,x,y)
    rslt5 = a[1]*(2.0*besselj(sqrt(.....;
    return rslt5;
    end function;
    [a, res1, q1, qVar1] = fit(g, Top_data, fit5, guess,,,iterMax,w,rho );
    getting the following error message:
    is not a valid signature for the function"fit"

  • Why my iphone5 can not use the weather function with the mobile internet?

    I just bought an iphone5, but the weather software doesn't work if not using wifi, the support people told me that Apple desined this only for wifi, but I don't think so, pls help to find a solution

    As the attached article shows, AirPlay Mirroring requires an iMac to be from mid-2011 or newer.
    You should be able to use AirPlay to send music (but not video or pictures) from your iMac to speakers.
    http://support.apple.com/kb/SP654

  • Can't use voice/video functionality with external domain connected users through federation

    Hello All,
    Hope you keeping well..!!
    We are communicating with external customers lync server through federation option setup on our corporate lync server.  We have received the federation setting from the customer with SIP address which has been setup on our corporate lync servers after
    that we were able to browse the customer contact through corporate lync account.
    We were also able to chat with external customer but however voice/video functionality are not working through same session.  Whenever we try to dial out external customer lync account it ended with error message "call ended due to network issue".
    We have checked the setting from corporate lync servers and network point of view but doesn't find any issue which cause the disconnection to voice/video over lync.  Could you pl help or guide with the way to resolve the issue.
    Thanks, MK

    Thanks for your reply.<o:p></o:p>
    Audio/Video works fine within corporate when dial any lync contact.  We only have issue while trying to use the same functionality with any other
    external lync contact configured over federation option.<o:p></o:p>
    We already checked the security rules and all required ports are open, as confirmed by local resolver group.<o:p></o:p>
    We have checked with external parties and according to them their systems are hosted by Microsoft as part of office 365 suite and they already have
    federation option for 17 different customers which works fine.  Which means issue must be your local end.<o:p></o:p>
    Is there any tool available to identify the issue from client end?<o:p></o:p>
    Also I have a question here....In my corporate environment...client is sitting in India and lync servers are hosted in UK and users connect to it
    over MPLS route.  In Client lync configuration we have  internal/external servers configured .....so when i tried to make a voice call with external lync users then I see from netstat -a command that traffic hitting to multiple public IP addresses
    directly from my machine..<o:p></o:p>
    Does it mean that client required internet connectivity with specific open media ports to connect with external parties for video/voice? or in ideal
    case all request should handle by corporate internal server which should took UK internet path to connect with external lync contact?
    Thanks, MK

  • How do I use the print function to output a numeric variable with a fixed amount of leading zeroes

    I need to create an output from a T-SQL query that picks a numeric variable and uses the print function to output with leading zeroes if it is less than three characters long when converted to string.  For example if the variable is 12 the output should
    be 012 and if the variable is 3 the output should be 003.
    Presently the syntax I am using is PRINT STR(@CLUSTER,3) .  But if @CLUSTER which is numeric is less than three characters I get spaces in front.
    Please help!

    >> I need to create an output from a T-SQL query .. <<
    NO! NO! In RDBMS, we have a presentation layer that handles displays. We do not ever do it in the database. This is fundamental. But more than that, the purpose of PRINT is for debugging in T-SQL and never for output.
    You are still writing 1960's COBOL or BASIC, but you want to to it in SQL.  You probably picked the wrong data type (a numeric that should be a string) and are trying to repair your design error.  
    --CELKO-- Books in Celko Series for Morgan-Kaufmann Publishing: Analytics and OLAP in SQL / Data and Databases: Concepts in Practice Data / Measurements and Standards in SQL SQL for Smarties / SQL Programming Style / SQL Puzzles and Answers / Thinking
    in Sets / Trees and Hierarchies in SQL

  • How to use the set functions effectively in webi ,please let me know with detail

    how to use the set functions effectively in webi ,please let me know with detail

    Hi,
    we use use set functions on heirarchies with aggregate functions mostly .
    If you include member_set, Min returns the minimum value of the aggregated data for all members in the member set.
    Member_set can include multiple sets separated by semicolons (;).
    The list of member sets must be enclosed in {}.
    If the member set expression does not specify a precise member or node, the hierarchy referenced must be present in the table, then the member set expression references the current member in the hierarchy in the table. If the hierarchy is not in the table, the function returns the message #MULTIVALUE.
    Eg .
    1)     Ancestor
    =Sum([YTD] ; {Ancestor([Test Hierarchy];2)})
    2)     IsLeaf
    =[Test Hierarchy].IsLeaf
    You can use this function when you want to show your Measure only at lower level .
    3)     .Depth
    =[Test Hierarchy].Depth
    This is also function used with hierarchy to find Level of Members .
    Follow this link for PDF reference .
    Page 147
    https://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&ved=0CDIQFjAB&url=https%3A%2F%2Fhelp.sap.com%2Fbusinessobject%2Fproduct_guides%2Fboexir4%2Fen%2Fxi4sp5_ffc_en.pdf&ei=nBAUU-iUM4WWrAeMuoCoDg&usg=AFQjCNHakXsEjd_yUk2y3lVdibf3PXpEOA&bvm=bv.61965928,d.bmk
    search on SCN this question was discussed before also one those links .
    http://scn.sap.com/thread/3183380
    Hope this will help you .

  • Hi, I've been using the 3D function in PS, upgraded to CC2104 and it was disabled (need more VRAM). I then reinstalled CS6 and was able to use it for a day and now, today, I am getting the same message I got with PS CC2014 saying my VRAM is too low again.

    Hi, I've been using the 3D function in PS, upgraded to CC2104 and it was disabled (need more VRAM). I then reinstalled CS6 and was able to use it for a day and now, today, I am getting the same message I got with PS CC2014 saying my VRAM is too low again. I'm in the middle of a project that needs to go live tomorrow. HELP!!! Please.

    Photoshop requires 512 Meg of VRAM or more to use the 3D features - that's been the same for version 14 (CC) and now 15 (CC 2014). Check Help->System Info to see how much your card says it has.

  • I have transefer function like (1/(s^2+s+​5)) and i have a square wave input , i want to use this transfer function with this input to see the output , how can i do that , with example please.

    i need to know also how to represent this transfer function in labview, try to send me example. answer me at my mail

    "st" wrote:
    > answer me at my mail
    give a valid e-mail first, and your name, we don't like to help anonymous
    people
    > try to send me example.
    how much do you pay ?
    > i have transefer function like (1/(s^2+s+5)) and i have a square wave
    > input , i want to use this transfer function with this input to see
    > the output , how can i do that
    First you have to know what you are doing, like an engineer : you have a
    Laplace, continuous time transfer function but LabView handles discrete
    signals only. Use matlab/simulink if you want to simulate continuous time
    systems easily...
    If you definitely want to use LabView, the first step is to discretize your
    continuous-time transfer function, i.e. decide a sampling rate and convert
    it to a "z transfor
    m". Then you can directly use the "IIR Filter.vi" as I
    said earlier.
    Philippe Guglielmetti - www.dynabits.com me at my mail

  • How to use the pps function from JCOP?

    Hi
    I'm trying to use the pps function from JCTerminal (JCOP API: [url http://www.cs.ru.nl/~woj/jcopapi/com/ibm/jc/JCTerminal.html#pps(int, int)]pps function ) to connect my client to a virtual card with a specific protocol (T=0).
    But I always got the error: "Protocol and parameter selection not supported by this terminal!"
    I've tried to make an ATR that support both protocol : [url http://smartcard-atr.appspot.com/parse?ATR=3b909580811fc7dc]3B 90 95 80 81 1F C7 DC.
    I really don't know what value to put in the second parameter (baud rate), I've tried with 150000, which is in the range of the ATR but I'm not sure this is correct. And I could't find any example of it.
    I'm also not sure where to put the pps command, the specification say directly after a reset, so I tried this implementation:
    System.out.print("Start");
              readers = TerminalFactory.getDefault().terminals().list(State.CARD_PRESENT);
              //If no readers has a card it ends the process
              if(readers.isEmpty()){
                   System.out.println("\nNo card in the reader...");
                   return;
              System.out.println("\nReader Type: "+readers.get(0).toString());
              term = (PCSCJCTerminal)JCTerminal.getInstance("PCSC", readers.get(0).toString().substring(15));
              term.open();
              System.out.println("\nTerminal opened");
              //Getting the ATR
              atr = new ATR(term.waitForCard(2000));
              try {
                   term.pps(JCTerminal.PROTOCOL_T0, (int)150000);
              } catch (Exception e) {
                   e.printStackTrace();
              System.out.println("ATR: "+toHex(atr.getBytes()));
              //sending a data 11223344
              System.out.println("\nsending data: 11223344");
              byte[] responsesend = term.send(0,cmdsend,0,cmdsend.length);
              System.out.println("Response data is:" + toHex(responsesend));
              //close terminal
              term.close();
              System.out.println("\nTerminal closed");I've got this output on the console:
    <font size="2">StartReader Type: PC/SC terminal Virtual CAD Reader 0
    Terminal opened
    ATR: 3b 90 95 90 00 81 1f c7 cc
    sending data: 11223344
    <font color="red">Protocol and parameter selection not supported by this terminal!</font>
         at com.ibm.jc.JCTerminal.pps(Unknown Source)
         at com.test.essai.main(essai.java:46)
    </font>>
    And If I take a look at the data exchanged with the card:
    <font size="2">Running in Virtual Card mode...
    ATR: 3B909580811FC7DC
    Waiting for event (power: off, protocol: unknown/undefined)...
    Waiting for event (power: off, protocol: unknown/undefined)...
    Raw event data: 01
    Event: VCAD_EC_POWER_ON (0x01)
    Reply: VCAD_SC_OK (0x00) (in reply to VCAD_EC_POWER_ON) ATR: 3b909580811fc7dc
    Raw reply data: 003b909580811fc7dc
    Sending reply...
    Waiting for event (power: on, protocol: unknown/undefined)...
    Waiting for event (power: on, protocol: unknown/undefined)...
    Raw event data: 06ff11957b
    Event: VCAD_EC_EXCHANGE_TPDU (0x06) C-TPDU: ff11957b
    Accepting any PPS request parameters: Protocol: t=1; FI=9, DI=5
    Reply: VCAD_SC_OK (0x00) (in reply to VCAD_EC_EXCHANGE_TPDU) R-TPDU: ff11957b
    Raw reply data: 00ff11957b
    Sending reply...
    </font>>
    This (above) is the PPS command but not from the PPS function, it is always sent with protocol T=1
    <font size="2">Waiting for event (power: on, protocol: t=1)...
    Raw event data: 0501
    Event: VCAD_EC_SET_PROTOCOL (0x05) Protocol: t=1
    Reply: VCAD_SC_OK (0x00) (in reply to VCAD_EC_SET_PROTOCOL)
    Raw reply data: 00
    Sending reply...
    Waiting for event (power: on, protocol: t=1)...
    Raw event data: 0600c10120e0
    Event: VCAD_EC_EXCHANGE_TPDU (0x06) C-TPDU: 00c10120e0
    Handling protocol-specific command...
    Protocol block:
    NAD: 0x00
    PCB: 0xc1 (T1_S_BLOCK); S-Block type: T1_SBT_IFS_REQ
    LEN: 1
    INF:
    IFS: 20
    EDC: 0xe0
    Changing IFS(other) from 32 to 32
    Reply: VCAD_SC_OK (0x00) (in reply to VCAD_EC_EXCHANGE_TPDU) R-TPDU: 00e10120c0
    Raw reply data: 0000e10120c0
    Sending reply...
    Waiting for event (power: on, protocol: t=1)...
    Raw event data: 0600001300a404000d54657374436c69656e7441707000f0
    Event: VCAD_EC_EXCHANGE_TPDU (0x06) C-TPDU: 00001300a404000d54657374436c69656e74
    41707000f0
    Processing app. command...
    App. block:
    NAD: 0x00
    PCB: 0x00 (T1_I_BLOCK); Seq. #: 0; More data: 0
    LEN: 13
    INF:
    00a404000d54657374436c69656e7441707000
    EDC: 0xf0
    cmd name: N/A (class #4)
    cmd: 00a40400 0d 54657374436c69656e74417070 70
    Responding with the reversed command data, SW is hardcoded to 90<INS>
    rsp: 707041746e65696c4374736554 90a4
    Reply: VCAD_SC_OK (0x00) (in reply to VCAD_EC_EXCHANGE_TPDU) R-TPDU: 00000f70704
    1746e65696c437473655490a475
    Raw reply data: 0000000f707041746e65696c437473655490a475
    Sending reply...
    Waiting for event (power: on, protocol: t=1)...
    Raw event data: 060040041122334400
    Event: VCAD_EC_EXCHANGE_TPDU (0x06) C-TPDU: 0040041122334400
    Processing app. command...
    App. block:
    NAD: 0x00
    PCB: 0x40 (T1_I_BLOCK); Seq. #: 1; More data: 0
    LEN: 4
    INF:
    11223344
    EDC: 0x00
    cmd name: N/A (class #1)
    cmd: 11223344
    Responding with the reversed command data, SW is hardcoded to 90<INS>
    rsp: 9022
    Reply: VCAD_SC_OK (0x00) (in reply to VCAD_EC_EXCHANGE_TPDU) R-TPDU: 0040029022f
    0
    Raw reply data: 000040029022f0
    Sending reply...
    Waiting for event (power: on, protocol: t=1)...
    Raw event data: 03
    Event: VCAD_EC_POWER_OFF (0x03)
    Reply: VCAD_SC_OK (0x00) (in reply to VCAD_EC_POWER_OFF)
    Raw reply data: 00
    Sending reply...
    Waiting for event (power: off, protocol: unknown/undefined)...
    </font>>
    If someone know how to use this function or have any advice to help me to select a specific protocol with Jcop API, please let me know.
    If you you need any more information don't hesitate to ask.
    Best regards
    Edited by: Cyril on Sep 22, 2011 9:54 AM

    -1
    I'm using a virtual terminal (windows driver), and I don't see how I could turn off the Auto-pps. I've also tried with a real reader and a card and I have the same error.
    -2
    I've tried value in the range of the atr (based on this analysis: [url http://smartcard-atr.appspot.com/parse?ATR=3b909580811fc7dc]http://smartcard-atr.appspot.com/parse?ATR=3b909580811fc7dc ). But I don't know if only I value of baud-rate is possible in the range. Anyway I just would like to change the protocol, not the baud-rate.
    -3
    I've already tried to call pps function before, after the first reset, or with another reset later and I always got the same thing.
              term = (PCSCJCTerminal)JCTerminal.getInstance("PCSC", readers.get(0).toString().substring(15));
              term.open();
              System.out.println("\nTerminal opened");
              //Getting the ATR
              atr = new ATR(term.waitForCard(2000));
              System.out.println("ATR: "+toHex(atr.getBytes()));
              jcard = new JCard(term,atr,0);
              jcard.reset();          
              try {
                   term.pps(JCTerminal.PROTOCOL_T0, (int)312500);
              } catch (Exception e) {
                   e.printStackTrace();
              }The same pps is always send after each reset...

Maybe you are looking for

  • My mac and internet explorer

    Hi. I am a new mac user and I have this one problem than I am hoping someone might have an answer for. I need to do some training online for work but the website I need to use only supports internet explorer. Now my mac I safari, but I also have fire

  • How to connect remotely to a computer running XP professional

    How can I connect remotely to my work computer running XP Professional from my mac book; I'm running tiger on the mac Thanks in advance

  • API  for updating contract Relationships for Contract Repository

    Hi all, what is the API used to update th Contract relationship details in oracle contracts? Please help.

  • Is there a way to rename a share in Leopard?

    Before Leopard is was possible to use the utility Sharepoints to rename a share without changing the name of the folder that was being shared. I have not yet found a way to rename a share using the Sharing preference in Leopard. Any know of a way to

  • Supervisor desktop:- Display current skill

    Hi All, In supervisor desktop application, i would like to know, when an agent is in talking mode, the current skill to which he is actually mapped to. a sample code for the same would be of great appreciation. Regards Suhas