how to autocomplete values based on a list - excel

I created many Lists and they are getting longer. At the moment i am using data validation, so I have big lists and need to select the name i want
They are all listed on my formulas, so i would like to know if there is any way
to start to write the name that i need and excel already shows the
possibilities...
I tried to use this formula but was not successful
=OFFSET(Sheet1!$A$1,0,0,MATCH("*",Sheet1!$A$1:$A$300,-1),1)
For instance i have a list of currencies called "CCY", i would like to write
"US" and excel already shows USD. Is there any way to do that?

=OFFSET(Currency,MATCH(A2&"*",Currency,0)-1,0) 'A2 is where the validation applies, make sure it accepts values not in list
You can enter the value in a second go, will let you select from values after.
I wouldn't use it but
It will let you select any value from the drop-down
You can let it do its job by typing "us", Tab, Shift+Tab, Alt+Down and Tab quite fast.
The formula below won't let you select values after, takes the first match only, handle with care.
=OFFSET(Currency,MATCH(A2&"*",Currency,0)-1,0,1,1) 'fun fact: you can give names to data table columns thus creating expanding lists

Related

Excel XLOOKUP / FILTER Function Unable to Use in Data Validation Drop Down List

I am truly stumped and believe I'm looking at the cliff of what excel is simply incapable of in its current state. I am hoping that one of you geniuses can prove me wrong.
Here's my situation. I have thousands of items that need to be sorted by 5+ parameters. The best way I can think to do this is to have one drop down list populate the next drop down list.
For instance;
A user would select the first drop down list and choose a given item.
1. ITEM
From that item chosen, the next drop down list would populate to only show the various model numbers for that item.
2. MODEL
I currently have this part working using an XLOOKUP embedded in a data validation list.
=XLOOKUP(Item Input Cell, Item Column, Model Number Column)
After this point. I want XLOOKUP to continue to automatically populate these lists.
3. MATERIAL
4. CAPACITY
5. VENDOR
6. PRICE
From the chosen item & model, then materials that match both item & model display in a drop down. Capacities that match 1,2,3 have a drop down, vendors that match 1,2,3,4 have a drop down, and finally displaying all possible prices for that input in a drop down.
My problem is that I can not seem to figure out how to use XLOOKUP sorting by 2+ criteria successfully in a data validation list. I get the "There's a problem with this formula" error box.
I have scoured the internet for others encountering this problem, but nothing seems quite 1 to 1 to what I am working with. I am unable to have an independent table on this specific excel sheet to then populate the data validation list for every single permutation so that's out.
For list 3, I have tried using
=XLOOKUP((ItemInputCell & ModelInputCell),(ItemColumn & ModelColumn),MaterialColumn)
this does not work and leads to the aforementioned error box.
FILTER does work when it's in a regular cell, but is unable to function in a data validation list (?) apparently. Which is truthfully aggravating as it's functioning perfectly otherwise.
I am hoping that one of you can see some novice mistake and correct my ways OR if I have reached the cliff I mentioned, what is another method of doing this?

Multi LookUp - Check for unique values

I´m trying to set up unique values in my PowerApp-Form. The data is stored in a Sharepoint list. I have a column called watches, items in this column have a unique number, which have to be unique. People can pick multiple of those watches in a LookUp-field. But before submitting the form, I need to check if those picked values already exist in my list and at least display an error message.
I have setup a regular text field and added following rule to it:
If(LookUp(MyList.Watches;DataCardValue4.SelectedItems.Value in Watches;"OK")<>"OK";"No Error";"Watch already exist")
DataCardValue4 is my LookUp field, where people can pick those watches. With this rule I want to check if a item already is in my column watches and let my text field display the error. Somehow the rule doesn´t work.
Can you tell me how I compare multiple lookup choices to my table/column entries?
The first parameter to the LookUp function should be the table (SharePoint list) rather than the column. So the first parameter should be 'MyList' rather than 'MyList.Watches'. Also, I'm not sure that the formula provided (second parameter to LookUp) will work. In your formula, you will be looking for multiple items (DataCardValue4.SelectedItems.Value) within multiple items (Watches). Perhaps you can update your app to have users only pick one watch value before submitting?
One last thing to note. I'm not sure how big you expect your SharePoint list to get, but I would highly recommend keeping your LookUp formula within the bounds to support delegation. More specifically, SharePoint has different formula requirements than other connectors. For example, you can use '=' in your formula, but not 'in'.
Your new rule might look something like below. Please note that it could have syntax errors and might not even be delegable in it's current form since I am providing the rule with no checking. Also, I switched from using LookUp to using Filter instead just because I'm more familiar with Filter. However, both functions are very similar.
If(CountRows(Filter(MyList; DataCardValue4.Selected.Value = Watches)) > 0; "Watch already exist"; "No Error")

Taking means of irregular amounts data

I'm not able to take the means for a large dataset given that the amount of attributes is irregular.
I have posted a simplified case for the problem. It explains the problem very well.
An idea that I came up with: Make a filter to condition on a single attribute. However, still, I don't see a way to do this in an efficient way (other then doing it all by hand).
see excel file:
All help is much appreciated.
I'm basically looking for a function/method to achieve taking means of all different attributes conditioned on each person for a large dataset without doing it by hand.
You can use AVERAGEIFS() inside an IF:
=IF(OR(A2<>A1,B2<>B1),AVERAGEIFS(C:C,A:A,A2,B:B,B2),"")
the ifrst part of the if tests whether the row starts a new group either by the person or the attribute changing. Then it uses AVERAGEIFS() to return the correct average of that group. otherwise it returns a blank
What you want to do can be accomplished very simply with a pivot table.
Simply select one of the cells inside the range of data you want to process(See the video for general use of a pivot table https://www.youtube.com/watch?v=iCiayB6GrpQ )
go the insert tab and insert pivot table.
Once you have it, simply check people, attribute, and values. Then drag people and attribute into rows, drag valut into the values window, select the drop down list and change it from sum of value to average and you should be done. https://i.stack.imgur.com/nYEzw.png

Column to rows and highlight difference between values in the same group

I have a huge table with data structured like this:
And I would like to display them in Spotfire Analyst 7.11 as follows:
Basically I need to display the columns that contain "ANTE" below the others in order to make a comparison. Values that have variations for the same ID must be highlighted.
I also have the fields "START_DATE_ANTE" and "END_DATE_ANTE" which have been omitted in the example image.
Amusingly, if you were limited to just what the title asks, this would be a very simple answer.
If you wanted this in a table where the rows are displayed as usual, and the cells are highlighted, you can do this by going to properties, adding a newGrouping where you select VAL_1 and VAL_1_ANTE and add a Rule, Rule type "Boolean expression", where the value is:
[VAL_1] - [VAL_1_ANTE] <> 0
This will highlight the affected cells, which you can place next to each other. You can even throw in a calculated column showing the difference between the two columns, and slap it on right next to it. This gives you the further option to filter down to only showing rows with discrepancies, or sorting by these values.
However, if you actually need it to display the POSTs on different lines from the ANTEs, as formatted above, things get a little tricky.
My personal preference would be to pivot (split/union/etc) the data before pulling it in to Spotfire, with an indicator flag on "is this different", yes/no. However, I know a lot of Spotfire users either aren't using a database or don't have leeway to perform the SQL themselves.
In fact, if you try to do it in Spotfire using custom expressions alone, it becomes so tricky, I'm not sure how to answer it right off. I'm inclined to think you should be able to do it in a cross table, using Subsets, but I haven't figured out a way to identify which subset you're in while inside the custom expressions.
Other options include generating a table using IronPython, if you're up to that.

Single Use List - Excel

I'm after a way of preferably using VLookup to return information and once returned, have the source information unavailable for the same lookup.
e.g. If I have a list of names I have not used in seating for an event, I will want a formula which can look up this information WITHOUT entering the same name more than once. I'd rather not do a drop-down option as requires selecting the entry and I want my whole table to be an self-filling database.
I've about 20 nested IF functions going on in one cell so ideally something that could fit in there easily? Ill take anything honestly :P
Thanks in advance

Resources