Google Sheets sort checked checkboxes relevant data by order - google-sheets

In my sheet I have checkboxes and item names next to them. Once I check a checkbox, the item name is displayed in the main sheet in column C and the belonging icon in column B. Column E and F are for the buyer name and the price.
Issue is, since the items are automatically sorted A-Z, the buyer name and price for alot of items messes up once new items are added.
For example an item that starts with a "G" moves automatically one row down once another item is added that starts with any letter before "G".
Is it possible to sort the list by order of addition of the checked checkboxes?
https://docs.google.com/spreadsheets/d/1yKYFnWgJN823bd6PjDy-Ozi20gF2UckEUK9I3CXgerI/edit?usp=sharing

Related

On Google Sheets, how do I 'attach' the value of a cell to the value of the cell on the left?

I have a table with 3 columns, say A, B and C, though only column C is editable by the user.
Column A contains values all from another sheet - the number of values in this column can change as values are deleted or added to the other sheet (EDIT: new values can be added to any part of the other sheet, not just the bottom).
Column B is a uniquely sorted list of the values of Column A.
Column C is currently just a normal column that takes values from the user.
When a user enters a value in a Column C cell, they do so based on the cell to the left (in column B). However, as the values in the other sheet can change, values in column B can be deleted or move up or down a row, or new values can appear anywhere in this column B.
Somehow, when the user puts "bar" into a cell in column C on row X and the value of column B on row X is "foo", then rather than "bar" always just staying in cell CX: 1) when "foo" changes it's row to row Y (because another value has been added to or removed from column B, or the first letters of the value in BX have been changed), "bar" should also move to row Y 2) if "foo" is completely removed from column B, "bar" should also be removed from column C 3) new values in column B should have blank column C cells to the right of them.
Eg say the table looks like this
B: C:
apple Rsdne fwe
banana Fg fdsg gse
grape Awtoi fje
lime Wpe fjweo
orange Jbob
If on the other sheet: a new value "kiwi" is added, "orange" is changed to "clementine" and "bananas" is removed, after all this the table should then look like this:
B: C:
apple Rsdne fwe
clementine Jbob
grape Awtoi fje
kiwi
lime Wpe fjweo
Is this / any of this possible? If so, how is this done?
Data entry should happen in a fixed table and not into a moving structure. Changing the association of a data entry row to a different parameter is simply bad data architecture. There isn't a simple formula solution to counter that.
My advice is to step back and determine what you want to achieve, then design a process that is fit for that purpose.
Creating a unique list of values from a hidden column is a reporting technique. Then this report is getting mixed with data entry. These two things, i.e. data entry and reporting should never happen on the same sheet.
Create a sheet that has all the possible unique values in a constant data entry table. Let the user enter their values into that DataEntry Table. New values can be added to the bottom of the table. If Orange is changed to Clementine, don't delete the row for Orange, just leave it and add a new row for Clementine.
Then you can create a report that takes the duplicates from your initial first sheet, creates a list of unique values and then uses lookups formulas to pull the user entries from the DataEntry table.

Sort Range Ignoring "" Flavor of Blank on Google Sheets

I have a spreadsheet with 2 main columns.
Column A is the student's name.
Column B is the student's grade.
Other columns (not shown) list various information about the student that the end users input.
End users click on the Data Validation Arrow to select the student in Column A, and the student's grade is auto populated in Column B.
The formula in Column B is:
=IF(A2="","",Index(All!$B:$B,Match(A2,All!$A:$A,0)))
The All sheet contains a master directory of the Students and their Grade level assignment.
The Problem:
When users attempt to re-sort the data using the Sort A-Z menu option in B1, it includes the blank cells in the sort - The blank cells come first, moving all the relevant data to the bottom of the sheet.
I understand that G-Sheets considers "" to be text. Is there another method to write my formula that would keep the Grade column blank, but allow for the sorting feature to function as end users would expect?
You can implement two additional comments where you filter the results before sorting them:
=SORT(FILTER(A2:B,not(B2:B="")),2, true)

Validate text from list using multiple sheets

I am using google sheets to do the following.
Sheet 1 : 1 column for each person who needs access to the file. Each column's cell has a dropdown menu so people can select what items they have.
Sheet 2 : A list of every item in column A, columns B through G are the names of the people.
What I am trying to do is to have on sheet 2, the words "YES" or "NO" appear under each person's name if they have selected the item whatever the order.
So if Person 1 picks in the dropdown of sheet 1 that they have Item 1, Item 3, Item 2 in this order, I want sheet 2 to show the "YES" or "NO" mention. I don't want the order of the items in the list to be an issue.
So far, I have tried these 2 methods :
=IF('Sheet1'!A2:A25=A2;"YES";"NO")
=IF(RegExMatch('Sheet1'!A2:A25;A2);"YES";"NO")
These do not work as the items must be selected in the same order as they appear in the second sheet. Is there another function that can validate a list in any order and apply the appropriate value?
Thanks ahead!
Jason
Edit : https://docs.google.com/spreadsheets/d/1cNn7G9x9o56d_9qM18s3AULkhpfOV5Y-b55vycCUyLY/edit?usp=sharing
Sheet2!B2:
=ARRAYFORMULA(IF(ISERROR(MATCH($A$2:$A$100;Sheet1!A2:A25;0));false;true))
MATCH Sheet1A column against Sheet2A column
IF MATCH returns error, FALSE, else TRUE.

How can I compare strings and sort them accordingly using an auto-generated Google Forms response sheet?

So my goal is to have every name on the roster in column A and then have the names of those who respond (not everyone will respond) in column B. I want column A to sort alphabetically. I want column B (and the corresponding columns with answers (C-E)) to only fall in line if the name matches. Otherwise columns B through E would be left blank. Any help would be appreciated. Thanks!
Make a new sheet with the roster names. After typing them, use the Google Sheets sorting tools to sort them.
Use the match function to identify the corresponding row in the first sheet for each of the roster names.
Once you have got the row, you can get the data for any cells in that row. See Get content of a cell given the row and column numbers .

IF cell in "A" column is < 0 then copy contents of "B" cell to a cell in sheet "C"

I'm trying to keep track of inventory and ordering for some products. Once a product's inventory hits below zero (-1), I want it to add it to an "order list" on another sheet. I've provided a 'dummy' copy of my spread sheet to show what I need.
Dummy Sheet
I have the sheet currently set up to keep up with the inventory. Once a decal is sold, it changes the inventory to the correct number on hand in the INVENTORY page in column E. Right now, if the inventory goes under 0, it flags the decal with ORDER in the next column. What I want the sheet to do now is, once the inventory for a decal reaches -1 in column E, I want it to pick up the decal "name" from column A in the INVENTORY page and add it to the list on the "To Order List" page in column A.
I'm sorry if that's confusing.
Thanks!
You can have formulas on the sheet C for each item of your list which copy that item's name if its quantity is below 0:
=IF(A1 < 0, B1, "")

Resources