I have 3 tables in 3 sheets. The email column is where the data is identified. Which means the emails will be unique in the expected results sheet after joining
To make a copy of the sheet click here
To view the sheet click here
First Sheet
First Name
Last Name
Email
Phone
Childs First Name
Child Last Name
DOB
Photo Permission
Allergies
Additional Info
Additional Contact
Teacher Name(s)
Sibling First Name
Sibling Last Name
DOB2
Allergies 2
Additional Info 2
Photo Permission 2
How did hear?
Second
Second-First Name
Second-Last Name
Second-Phone
Email
Second-Message
Third
Third-First Name
Third-Last Name
Email
I have tried with
=FILTER({First!A2:B,
VLOOKUP(First!C2:C, {Second!A2:A, Second!B2:D}, {2,3,4}, false)},
First!C2:C<>"")
But I need to ensure all 3 sheets are joined and the expected result look like
Expected
First
Second
Third
There are three formulas in cyan on the tab called MK.Help in this editable copy of your sheet:
This is the one for the second set of names:
=ARRAYFORMULA({Second!A1:E1;ARRAY_CONSTRAIN(IFERROR(VLOOKUP(C2:C,{Second!D:D,Second!A:E},{2,3,4,5,6},0)),COUNTA(C2:C),5);FILTER(Second!A2:E,Second!D2:D<>"",ISNA(MATCH(Second!D2:D,C2:C,0)))})
That do what you're hoping?
Related
I have 2 spreadsheets in Google Sheets.
In spreadsheet 1 - Column A has the User ID (including duplicate ID) and Column B has Names.
In Sheet 2 - Column A has a Unique ID.
I want names to be shown in Column B in spreadsheet 2 (if in 1 User ID there are multiple names and it should show all the names in the unique ID.
I tried the below formula but it is showing the wrong names (names are not matching with the corresponding User ID).
In another sheet I got Unique IDs through: =UNIQUE(Sheet2!A:A) and names through =JOIN(",",FILTER(Sheet2!B:B,Sheet2!A:A = Sheet2!A1))
Attaching screenshots for reference.
Spreadsheet 1
Spreadsheet 2
Thank you
Try below lambda formula-
=LAMBDA(lm,{lm,MAP(lm,LAMBDA(x,JOIN(", ",FILTER(B2:B,A2:A=x))))})(UNIQUE(A2:INDEX(A2:A,COUNTA(A2:A))))
On my Google sheet, I want to print the ID# matching associated with a first and last name of a member. One section of my Google sheet has rows with matching
first name, last name, and ID#s. Another subsection of this sheet has First name and Last name.
This is what I have done so far. It works for Last names.
=IFNA(INDEX($AC:$AC,MATCH($F2,$AA:$AA,0)))
Columns descriptions
First section:
A - ID# ,
D - First Name ,
F - Last name ,
second section of sheet (A subset of first section):
Z - First name ,
AA - Last name ,
AC - ID# ?
The easiest solution would be probably to make a column that combines First and Last name into one cell in both tables, so that you can use either IFNA-formula or a Vlookup.
Also, you can combine two criterias with "&". I tested the code below in google spreadsheets, should work.
=IFERROR(INDEX($AC:$AC,MATCH($D2&$F2,$Z:$Z&$AA:$AA,0),1),0)
Check me
I have a google sheet with all current staff information. I have a second sheet for when some piece of data needs changed. Last name, Location, job ect.
on second sheet I am looking to have someone:
Enter the user's first name in column B,
and or Last name in Column C,
I would like a drop down box generated in column D from the given info to contain all usernames found in the sheet with current information for all staff that have the given first and or last names provided.
Once a username has been selected, I can get all the pertinent data from that user with a vlookup from the sheet containing all staff info. For example if someone typed Scott in column B, I would like a drop down generated in column D with all staff that have a first name of Scott. Likewise if the last name was supplied and of course if both first and last was supplied.
Validation need to be done that's it,
1) Go to Staff Changes'!B2 and Data Validation> List from range & choose range from 'Staff Info'!B2:B
2) Select cell'Staff Changes'!D2 and Data Validation> List from range & range will be filter formula i.e 'Staffing Changes'N2:N.
Result
Few tweaks in vlookup:
I am not sure if you need username column twice if you don't need then change your vlookup formula from =vlookup(D2,'Staff Info'!A:K,10,0) to =VLOOKUP(D2,'Staff Info'!$G$1:$K,2,0)
Please provide access to trix in future so that changes & result can be shown in it.
UPDATE:
Use data validation as before & hide filter colum or use seperate sheet for filter formula & use query function in cell A3 =QUERY('Staff Info'!A:J,"select ' ',A,F,' ',' ',G,' ',I,' 'where A='"&A2&"' AND F = '"&B2&"' LABEL ' ''Date',' ''Current Last Name',' ''New Last Name',' ''New Building',' ''New Classification'",1) result wil be something like this
QUERY
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)
I have a table in google sheets with 4 sheets in the same table. the details table contains the student ID, first name and second name but I would like to lookup the scanned number from the attendance table however the student number needs to match the scanned number.
the student number and the scanned number are both in the attendance table but I would like the scanned number to go into the details table according to the matched student number.
I have tried the following VLOOKUP but I am just getting errors.
=ArrayFormula(IF(LEN(B2:B), VLOOKUP(B2:B,'Student Attendance'!A:F,2,FALSE),))
so in sheet 1 I have scanned number in column B and Student number in column D which is entered through an app. on sheet 2 i have already got the student ID but i would like to lookup the scanned number from sheet 1 and enter accordingly against the correct student ID
I have tried using:
=IFERROR(VLOOKUP(B3:B,'Student Attendance'!A:F,2,TRUE),)
however this is only printing the same scanned number for every unique student number entered.
example data:
attendance sheet:
timestamp, scanned number, class, student number
time/date BARCODE-SCANNED Subject 123456
time/date BARCODE-SCANNED1 Subject 621314
this is all entered through an app so nothing manual here.
details sheet:
scanned number, student number, name
BARCODE-SCANNED 123456 Student name
BARCODE-SCANNED1 621314 Student name
on this sheet the student number and the name is already inputted manually but i would like to get the scanned number from the first sheet according to the student number. at the moment i have only got student number and name in this sheet.
Try
=ARRAYFORMULA (IFERROR(VLOOKUP(B3:B,{'Student Attendance'!D:D, 'Student Attendance'!B:B},2,TRUE),))
The vlookup value should always be in the first column of the lookup range.