I have a sheet that multiple people are working on, but only on certain rows in the sheet that they mark with their name. There is a master sheet where they are marking which ones they're working on, then a tab for each named person. The tab with their name gets populated using a "=QUERY(Master!A3:AX,"select * Where L='NAME'")". The goal of the tab is so they can work on their own stuff without having to scroll through the thousands of rows to find their next entry. Getting the info from the master to the tab is working fine, but when they are working on their tab, they add information to a few new columns at the end of the query. This is where my problem lies, when they go and tag another entry on the master as theirs, the columns they added information to already do not move with the entrys, they just get pushed up or down depending on the new entry placement.
Is there something I can do that will still pull in the data from the master sheet to the corresponding tab, but then keep what the staff is actually entering/working on, to remain in line with the entry that got pulled in? The whole process is sort of useless if their work is not retained as they are working through it.
For example, the query pulls in column A-L, then they are adding information to column M and N for the management to read and make decisions off of their input. I need the information they enter into column M and N to remain with the row the query originally pulled in. The master is sorted by a unique number in column A that needs to remain in that order, so they may add new entries randomly as they assign rows to themselves.
Related
I have been trying to create a production scheduler in google sheets.
Each tab is for a different department to fill out.
Ideally, one person enters the Order summary in the first tab. The next tab gets updated and someone else fills in the relevant details and it goes to the final tab.
Is there a way to automatically add rows to other tabs while having the ability to sort?
I have been using =arrayformula() initially but I realise the if I try sorting in other tabs, it messes up that sheet. I also tried =sheet1!A1, but I want to restrict as much input by other members.
sort it by formula. example:
=ARRAYFORMULA(SORT(A2:C; 2; (D1="asc")*1))
where D1 is a dropdown with asc,desc and we sort the whole array via B (2nd) column
I have a Google Sheet of 6 tabs. The intent is to create a role cost calculator and compare predicted to actual use.
One tab contains my master user list. It is the software used tab, just fyi.
Another tab is a slave tab which is the hardware used. That slave tab gets the user list from the software tab with the formula ={SoftwareByUser!A4:D160}
For each user, their hardware columns, E and beyond, are manually populated with integers that get multiplied by column costs to get a per user cost.
When an employee leaves our company I'd like to delete their row on the software tab. Imagine going from 51 total employees to 50 by removing row 26. Row 27-51 correctly become 26-50 on the software tab.
The trouble is the corresponding hardware row is not in removed, still having 51 rows in columns E and beyond, even though the number of rows in columns A-D have been reduced by the formula to the correct number of rows, 50. Hardware rows 26-51 no longer match their user.
I'm asking for a solution to do what I describe please. Is my thinking faulty and a different approach necessary?
What you should have to do is define an ID for each user (can be at least a first name / last name / date of birth concatenation). Then on the slave tabs manually type each one (do not link the two tabs for ID), then you can recall the master to slave tab using VLOOKUP with multiple column numbers at once. If one line is erased in master, or if the master is sorted, this will not affect the slave tab unless giving you an alert that the line has been erased.
I made a task tracker which takes my tasks from the main group Google Spreadsheet and arranges them in order in my tracker spreadsheet by date. I also included a dropdown list to mark the status of each task.
It's all working the way I hoped it would except for the status option - the data from the group spreadsheet changes frequently (tasks are removed and added) and when this happens, the list in my spreadsheet gets automatically updated and get shifted around based on the new tasks and dates, but the status column remains static.
For example, say I finish the first task on my spreadsheet so I mark the task on the first row of my tracker spreadsheet "done". Our group admin sees my work is finished and deletes said task from the group spreadsheet, so my tracker spreadsheet automatically gets updated and the first task is also removed from my spreadsheet.
However, the next task gets bumped to the top row of my spreadsheet, which is still marked "done" - I was hoping the status would get deleted as well or the dropdown menu is reverted to its blank initial state.
Is there a way to make the dropdown option register/remember which data or text were in its row (when it was chosen) and follow it when the tasks and schedules get updated? I was thinking the trigger could be when a cell in the status column gets filled in (by way of choosing an option from the dropdown menu), it remembers the data from the four cells to its left, then tracks it even when the list of tasks get shifted around.
I've tried to put together an update to your sheet that may do what you want. Look at my sample sheet. Since several small changes were needed on different tabs, I didn't want to affect your sample.
The key point is having a unique identifier for each task. Lots of ways of doing this. I added the sheet name, eg tasks1, or tasks2 to the Task#. This would need to be done in the sheets that you pull your tasks from, eg. tasks1, tasks2, and tasks3.
The Tracker tab lists all of your tasks, pulled from those sheets. I've added a hidden column (E) for the Task ID, but it doesn't have to be hidden. And possibly you don't need to show the Task#, if it is obvious from the Task ID value.
To enter status updates, you must only do that on the UpdateStatus tab. Here you will need to maintain a list of task IDs in some way. New Task IDs could be added to this list manually, when you get assigned a new task. Or a macro/script could be used to add new Task IDs.
You could even pre-define all possible task IDs for your company, and, using filtering, only show the ones for which you have an assigned task.
See tab UpdateStatus#2 for an example of this. This would depend on a good naming convention for your TaskID values.
Let me know if this makes sense to you or not, or if you have any questions. The only necessary formulas are a few VLOOKUPs to pull data from other locations, based solely on the Task ID value for that row. Formula cells are hightlighted in yellow.
I am creating a tool for a video game I play.
Link to the example spreadsheet (Please make a copy to edit so that this copy stays intact for additional helpers).
Sheet 1 is “Choose Owned”. It contains a list of all of the champions available in the game and includes their attributes.
Column A contains checkboxes. Checking a checkbox indicates that the user owns that champion, and brings it to Sheet 2.
Sheet 2 is called “Owned”. It contains a list of the champions checked off in “Choose Owned” (aka the champions the user owns). “Owned” includes the champion attributes too, as first seen in “Choose Owned”.
Beyond those same attributes, “Owned” contains 8 additional columns.
These columns are from Columns G:N and are labeled ‘Level’, ‘Rank’,
‘Ascension Lvl’, and ‘Team Label(s)’ (‘Team Label(s)’ takes up
columns J:N). This data is all unique information and requires the
user to input the information themselves depending on their
champions.
Because there are so many champions, I want the user to be able to use the Filter function in “Owned” so they can easily locate the champion they need or sort the table however they wish.
However, because I use the QUERY function to get the data from “Choose Owned”, the Filter function tends to break. The most obvious error comes when you try to sort A-Z or Z-A; this simply cannot be done. I was fine with this, and have even included a note at the top telling the user to avoid sorting alphabetically.
Everything else works correctly until the user tries to add a new champion from “Choose Owned”. When the champion is added to “Owned”, the additional, unique data in columns G:N go out of order because they don’t move with their original champions.
Example:
I choose my champions. These champions are copied to “Owned”.
I pick their relative data in columns G:N.
A few days later, I obtain new champions and check them off in “Choose Owned” so they are added to “Owned”. However, when I do this, the champions stay in the same order as they are in “Choose Owned”, and columns G:N do not move with their champions so now, that information is with the wrong champion.
I want the additional data (G:N) to move with their champions when the table is edited due to champions being added. Or, in other words, I want those columns to stay linked to the first columns.
If there is a different way to achieve all of this like if I have to use a function other than QUERY, that is fine!
Please share any solutions you may have. I would prefer to not use a script but will consider the idea if it works.
this is a common issue within Google Sheets and it's solvable in 2 ways:
either by introducing a common value (unique ID) and then linking the manual input to query and aligning it by ID
or easier approach in your case - using timestamp/linear ID so every new entry would be added to the bottom and then the query would be sorted based on this order.
I have a spreadsheet that we use as a Time sheet.
It's made up of approx 80 tabs (Names of employees)
We have a front page, simply called "Totals"
This adds up a fortnights worth of hours into several Columns
When we make changes, we have several scripts to help make life easier
(Delete old sheets, duplicate master sheet, rename duplicate sheets, protect ranges etc...)
One script that we don't have though is one to create the totals page faster.
Our totals page has the name of every employee in column A,
We use these names in our scripts to rename tabs etc...
I would like a script to link the calculations on the Totals Page, to the sheet and cell of every individuals tab.
We do this by manually by entering =nameoftab!C47 in the cells of the totals page.
What i want to do is =Totals!A3 C47
So the cell pulls the sheet name from the name list on the left hand side, and points to C47 in the appropriate tab.
This would allow us to add new people to our time sheet by simply adding their name to column A and not the formulas for ordinary time/overtime/travel time/allowances etc...
Can this be done?
I have played with several formulas/scripts to make this easier but to no avail
(Please let me know if you need me to be more specific)
Try this simple formula:
=indirect("'nameoftab'!C47")
or in your case:
=indirect("'" & Totals!A3 & "'!C47")
where Totals!A3 is cell with sheet name.