Getting started
Jev for Excel adds five functions under the JEV. prefix. Each one reads the text
in the cells you point it at, asks Jev (a decision model by TypeSafe) your
question in plain words, and puts the answer in the cell. Type a formula into any cell, for
example:
=JEV.YESNO(A2, "Is something broken?")
Most functions share their first two arguments:
- data
- The text to judge. A single cell gives one answer. A range with one item per row, such
as
A2:A50, gives one answer per row, spilled down next to your data. Several cells in one row, such asA2:C2, are read together as one item. Empty rows stay blank and cost nothing. - question
- What you want to know, in plain words. Be specific: if an answer could mean several things, say which one you mean, for example "Is this a bug report (not slowness or a feature request)?"
In Excel, the Jev Help button on the Home tab opens a short version of this page with the connection status and two tools, Retry failed cells and Freeze selection.
JEV.YESNO
Asks a yes or no question and gives TRUE or FALSE for every row.
=JEV.YESNO(data, question, [threshold])
Arguments
- data
- The text to judge: a cell, several cells in one row, or a range with one item per row.
- question
- The yes or no question.
- threshold (optional)
- How sure Jev must be to answer yes, from 0 to 1. The default is 0.5. Use a higher value, such as 0.7, to flag only clear cases.
Returns
TRUE or FALSE, one per row of data.
Examples
=JEV.YESNO(A2:A50, "Is this a complaint?") =JEV.YESNO(A2:A50, "Is this a complaint?", 0.7) =JEV.YESNO(A2, "Is this a bug report (not slowness or a feature request)?") =IF(A2="", "", IF(JEV.YESNO(A2, "Is something broken?"), "Bug", "OK"))
For a custom cut-off, use the threshold argument rather than comparing JEV.PROB with a
number: blank rows give an empty text, which a comparison like >= misreads.
JEV.PROB
Asks a yes or no question and gives the probability of yes.
=JEV.PROB(data, question)
Arguments
- data
- The text to judge: a cell, several cells in one row, or a range with one item per row.
- question
- The yes or no question.
Returns
A number from 0 to 1, one per row of data. Sort by it to check the close calls first.
Examples
=JEV.PROB(A2, "Is this a complaint?") =JEV.PROB(A2:A50, "Is something broken?")
JEV.YESNO and JEV.PROB ask the same question, so using both on the same text with the same question costs nothing extra.
JEV.CHOICE
Sorts text into your categories: one option per row.
=JEV.CHOICE(data, question, options, [output], [min_confidence])
Arguments
- data
- The text to judge: a cell, several cells in one row, or a range with one item per row.
- question
- What to decide, for example "What is this review mainly about?"
- options
- The choices, at least 2, each label once. Give them as any of:
- one text with commas, such as
"Bugs, Pricing, UX, Other" - a column or a row of labels
- two columns: the label in the first and a description of what it means in the second, which helps when the labels alone are ambiguous
- one text with commas, such as
- output (optional)
- What to show:
"label"(default): the chosen option"confidence": how sure Jev is, from 0 to 1"both": the option and the confidence in two columns"probs": one probability per option, across in the order of your options
- min_confidence (optional)
- From 0 to 1. When Jev's confidence is below it, the cell shows
Unsureinstead of a guess. The default is 0 (off).
Returns
One answer per row of data.
Examples
=JEV.CHOICE(A2, "What is the review about?", "Bugs, Pricing, UX, Other") =JEV.CHOICE(A2:A50, "Main topic?", $F$2:$G$5, , 0.8) =JEV.CHOICE(A2:A50, "Main topic?", "Bugs, Pricing, UX, Other", "probs")
In the second example, F2:G5 holds four labels with their descriptions, the
output is left empty (so it shows the label) and rows below 0.8 confidence show Unsure.
JEV.PICK
Reads a whole list together and picks the one entry that fits.
=JEV.PICK(list, question, [output])
Unlike the other functions, which answer each row on its own, JEV.PICK compares the entries with each other and gives one answer for the whole list.
Arguments
- list
- The entries to pick from: a column, a row, or one text such as
"Cat, Trout, Eagle". It needs at least 2 different entries. Blank cells are skipped, and an entry that appears twice is counted once. - question
- What to pick, for example "Which of these reviews is the angriest?"
- output (optional)
- What to show:
"item"(default): the chosen entry"position": its place in the list, counting blank cells, soINDEX(list, position)finds it"confidence": how sure Jev is, from 0 to 1"both": the entry and the confidence in two columns"probs": one probability per entry, spilled alongside the list (down for a column, across for a row), blank next to blank cells
Returns
The chosen entry, or what the output asks for.
Examples
=JEV.PICK(G1:G5, "Which of these is a mammal?") =JEV.PICK(A2:A50, "Which review is the angriest?") =JEV.PICK(A2:A50, "Which review is the angriest?", "position") =JEV.PICK(G1:G5, "Which of these is a mammal?", "probs")
Write a JEV.PICK formula once. Filling it down shifts its range, so every copy would compare a different list.
JEV.SCORE
Places text on an ordered scale that you define.
=JEV.SCORE(data, question, levels, [output])
Arguments
- data
- The text to judge: a cell, several cells in one row, or a range with one item per row.
- question
- What to rate, for example "How satisfied is the reviewer?"
- levels
- 2 to 10 levels, lowest first. Give them as any of:
- a whole number n for a scale from 1 to n, such as
5 - one text with commas, such as
"Low, Medium, High" - a column or a row of labels
- two columns: the label and a description of what it means
- a whole number n for a scale from 1 to n, such as
- output (optional)
- What to show:
"score"(default): the position from 1 to the number of levels. It is weighted by Jev's probabilities, so it can fall between levels, such as 3.4"label": the label of the nearest level"confidence": how sure Jev is, from 0 to 1"both": the score and the label in two columns"probs": one probability per level, across, lowest first
Returns
One answer per row of data.
Examples
=JEV.SCORE(A2, "How satisfied is the reviewer?", 5) =JEV.SCORE(A2:A50, "How urgent is this?", "Low, Medium, High", "label") =JEV.SCORE(A2:A50, "How urgent is this?", $F$2:$G$4, "both")
Tips and errors
Spilling and older Excel
A range formula spills its answers into the cells below (and to the right for "both" and
"probs"), which needs Microsoft 365 or Excel 2021 or later. Keep those cells empty, or Excel
shows #SPILL!. In older Excel, first select every cell the answers should fill,
for example B2:B50 (or B2:F50 for "probs" with five options), type
the formula and press Ctrl+Shift+Enter.
Write a range formula once, in the first row. Don't fill it down: each copy shifts its range and asks again.
Blank rows
A blank row gives an empty text. IF and comparisons misread it, so check for blanks first
when you wrap a JEV formula: =IF(A2="", "", ...).
When a cell shows an error
- Hover over the cell to see the reason, which starts with "Jev:".
#VALUE!means an argument needs fixing, for example an empty question or a threshold outside 0 to 1.#N/Ameans Jev could not answer, for example because the connection failed or a usage limit was reached. Failures are not remembered, so Retry failed cells in the Jev Help pane (or Ctrl+Alt+F9) asks again, and only the failed cells are sent.- The add-in is free to use within a daily limit that resets at midnight UTC. The Jev Help pane shows how much of today's limit you have used.
Keeping answers
Answers are kept for the session, so recalculating doesn't ask again. In a new session they are asked again and can shift slightly. To keep answers for good, select the cells and click Freeze selection in the Jev Help pane: it replaces the JEV formulas with their current answers.
Your data
The text of the cells a formula points at is sent to Jev through OpenRouter to get the answer. The Privacy Policy describes exactly what is sent and kept.
Still stuck?
Email [email protected] with the formula and the message you see when hovering over the cell.
Jev for Excel