Results 1 to 10 of 10
  1. #1
    ryanmce92 is offline Advanced Beginner
    Windows 7 64bit Access 2010 64bit
    Join Date
    Jan 2015
    Posts
    48

    Having a Weigted Rating System in a Form

    Hi there,



    I am in the process of creating a supplier database which will hold all of their contact details and the products which they supply.

    I have created a form "Add a New Supplier", in this form I have the usual contact details fields. At the bottom of this form I would now like to create a 1-10 rating system for each indvidual supplier. I want to have 3 ratings "Delivery Time", "Product Quality" and "Past Experience" (there will be a notes section to explain).

    I would like the 3 "ratings" to deliver one single rating based on a weighted average e.g 40%/40%/20%

    Is there anyway which this would be possible or is it just more bother than it is worth going in to?.

  2. #2
    orange's Avatar
    orange is offline Moderator
    Windows XP Access 2003
    Join Date
    Sep 2009
    Location
    Ottawa, Ontario, Canada; West Palm Beach FL
    Posts
    16,870
    Please describe this with an example
    a 1-10 rating system for each individual supplier. I want to have 3 ratings "Delivery Time", "Product Quality" and "Past Experience"
    I'm sure its "do-able", but we need some details to see where the starting values come from and how objctive they are.
    How do you evaluate "Delivery Time", "Product Quality" and "Past Experience"?

  3. #3
    ryanmce92 is offline Advanced Beginner
    Windows 7 64bit Access 2010 64bit
    Join Date
    Jan 2015
    Posts
    48
    Quote Originally Posted by orange View Post
    Please describe this with an example

    I'm sure its "do-able", but we need some details to see where the starting values come from and how objctive they are.
    How do you evaluate "Delivery Time", "Product Quality" and "Past Experience"?

    As I'm doing this for a manager I am only using these as test fields, I would just like to know how I would go about creating something like this, if the rating system involved the 40:40:20 ratio I described prevously?

  4. #4
    John_G is offline VIP
    Windows 7 32bit Access 2010 32bit
    Join Date
    Oct 2011
    Location
    Ottawa, ON (area)
    Posts
    2,615
    Assume your three ratings are A, B and C:

    (40*A + 40*B + 20*C) / 100.0 should give you what you need.

  5. #5
    ryanmce92 is offline Advanced Beginner
    Windows 7 64bit Access 2010 64bit
    Join Date
    Jan 2015
    Posts
    48
    Quote Originally Posted by John_G View Post
    Assume your three ratings are A, B and C:

    (40*A + 40*B + 20*C) / 100.0 should give you what you need.

    Is there anyway to make this be automatically calculated once the three values are entered?.

    Would I have to create a button to run VBA to calculate the overall rating?

  6. #6
    John_G is offline VIP
    Windows 7 32bit Access 2010 32bit
    Join Date
    Oct 2011
    Location
    Ottawa, ON (area)
    Posts
    2,615
    I would suggest using VBA to calculate the average after any one of the three values are entered or changed, in case a user makes changes after all three are entered.

    You would put the same line of code in the After Update event of each one, something like this (using your own form control names):

    [Weighted_Average] = (40*[Delivery Time] + 40*[Product Quality] + 20*[Past Experience] ) / 100.0

    You could use a button to calculate the overall rating, but you would have to find a way of ensuring the user actually clicked it after making changes. Automatic rating recalculation is better, IMO.

  7. #7
    ryanmce92 is offline Advanced Beginner
    Windows 7 64bit Access 2010 64bit
    Join Date
    Jan 2015
    Posts
    48
    Quote Originally Posted by John_G View Post
    I would suggest using VBA to calculate the average after any one of the three values are entered or changed, in case a user makes changes after all three are entered.

    You would put the same line of code in the After Update event of each one, something like this (using your own form control names):

    [Weighted_Average] = (40*[Delivery Time] + 40*[Product Quality] + 20*[Past Experience] ) / 100.0

    You could use a button to calculate the overall rating, but you would have to find a way of ensuring the user actually clicked it after making changes. Automatic rating recalculation is better, IMO.
    I will be handing out guides with this database, my end users wouldn't exactly be the most computer literate, I'll have a tutorial on how to use it etc.

    This looks like it will work, is there anyway for it to be automatically entered rather than having to click a button?.

  8. #8
    rpeare is offline VIP
    Windows XP Access 2003
    Join Date
    Jul 2011
    Posts
    5,441
    it's not entered, it's a calculated value which can be populated any time you open a form or a query, I think that's what John_G is saying. So for instance if your form is based on a query you can add the calculated field to that query, then whenever you navigate to a new record the calculated value appears.

  9. #9
    John_G is offline VIP
    Windows 7 32bit Access 2010 32bit
    Join Date
    Oct 2011
    Location
    Ottawa, ON (area)
    Posts
    2,615
    Putting the code in the After Update event of each of the three rating boxes will result in automatic recalculation each time the values are changed.

    You don't need the button at all.

    Just make sure the Weighted Average control (field) cannot be updated by users (Locked property = Yes), and that the users cannot tab into it (Tab Stop = No)

  10. #10
    ryanmce92 is offline Advanced Beginner
    Windows 7 64bit Access 2010 64bit
    Join Date
    Jan 2015
    Posts
    48
    Thanks for all your help, seems to be working perfectly!!

    Now how do I close the thread? haha

Please reply to this thread with any new information or opinions.

Similar Threads

  1. Query to fetch a rating based on another table
    By brianeveretthoffman in forum Queries
    Replies: 1
    Last Post: 11-13-2012, 12:30 PM
  2. Replies: 3
    Last Post: 09-17-2012, 09:53 AM
  3. Applying a Rating in A Form
    By Lupson2011 in forum Forms
    Replies: 5
    Last Post: 02-14-2012, 11:40 AM
  4. Replies: 2
    Last Post: 04-12-2011, 10:14 AM
  5. Elo rating system - using VB to update cells
    By zeugma in forum Programming
    Replies: 1
    Last Post: 12-02-2010, 10:06 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Other Forums: Microsoft Office Forums