get from ReportOne to the ReportTable"
It should be from ReportTable to ReportOne. Here is the query. First the ReportOne Table is emptied and the Append/Insert query loads the destinct records from ReportTable to the ReportOne. Then the Update queries bring in the colors according to month and year for each plant/tree.
RunQuery ("DELETE * FROM ReportOne;")
RunQuery ("INSERT INTO ReportOne ( Variety, Lot, Bin, Trees )SELECT DISTINCT ReportTable.Variety, Trim([Lot Number]) AS Expr1, Trim([Bin]) AS Expr2, ReportTable.[Number of Trees]FROM ReportTable;")
'Update Previous Year
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year1 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""1/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year2 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""2/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year3 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""3/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year4 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""4/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year5 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""5/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year6 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""6/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year7 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""7/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year8 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""8/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year9 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""9/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year10 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""10/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year11 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""11/"" & previousyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year12 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""12/"" & previousyear()));")
'Update Current Year
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year13 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""1/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year14 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""2/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year15 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""3/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year16 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""4/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year17 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""5/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year18 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""6/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year19 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""7/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year20 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""8/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year21 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""9/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year22 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""10/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year23 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""11/"" & currentyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year24 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""12/"" & currentyear()));")
'Update Next Year
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year25 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""1/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year26 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""2/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year27 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""3/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year28 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""4/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year29 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""5/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year30 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""6/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year31 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""7/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year32 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""8/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year33 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""9/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year34 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""10/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year35 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""11/"" & nextyear()));")
RunQuery ("UPDATE ReportOne INNER JOIN ReportTable ON (ReportOne.Trees = ReportTable.[Number of Trees]) AND (ReportOne.Bin = ReportTable.Bin) AND (ReportOne.Lot = ReportTable.[Lot Number]) AND (ReportOne.Variety = ReportTable.Variety) SET ReportOne.Year36 = [reporttable].[report color] WHERE (((ReportTable.DateFinished)=""12/"" & nextyear()));")
End Function
Here is the select statement to show the fields in ReportOne:
SELECT Variety, Lot, Bin, Trees, Year1, Year2, Year3, Year4, Year5, Year6, Year7, Year8, Year9, Year10, Year11, Year12, Year13, Year14, Year15, Year16, Year17, Year18, Year19, Year20, Year21, Year22, Year23, Year24, Year25, Year26, Year27, Year28, Year29, Year30, Year31, Year32, Year33, Year34, Year35, Year36
FROM ReportOne;
Thanks again! You don't know how much I appreciate your help...