First, yes, Access can do this easily. You don't need to keep anything in Excel, once you import it to Access.
Second, mathematically, (A3 - (A3-A2)/2) is the same as (A3+A2)/2 - the midpoint between the two times. The second calculation will be easier to determine in SQL.
Third, to make your life easy, your tide table could look like this
Code:
tblTideStages
StagePK AutoKey
StageMid Date/Time
StageStart Date/Time
StageEnd Date/Time
StageType Text
Whenever you add a chunk of new TideStages to the table, you will run a query to update the start and end times for the added stages. You can go ahead and let the database recalculate the start and end for all the Tide stages, or you could set a flag for the ones that had already been calculated. The following code assumes you just let it recalc every time, since the overhead is low.
Here's the SQL to update the mass of records, then the first, then the last. For the first and last tide stages in the table, I used the approximation of 90 minutes from the midpoint.
Code:
UPDATE tblTideStages AS TS1, tblTideStages AS tS2
SET TS2.StageEnd = (TS1.StageMid + TS2.StageMid) /2,
TS1.StageStart = (TS1.StageMid + TS2.StageMid) /2
WHERE TS2.StageMid =
(SELECT MAX(TS3.StageMid)
FROM tblTideStages AS TS3
WHERE TS3.StageMid < TS1.StageMid);
UPDATE tblTideStages AS TS1
SET TS1.StageStart = DateAdd("n",-90,TS1.StageMid)
WHERE TS1.StageMid =
(SELECT MIN(TS3.StageMid)
FROM tblTideStages AS TS3);
UPDATE tblTideStages AS TS2
SET TS2.StageEnd = DateAdd("n",90,TS2.StageMid)
WHERE TS2.StageMid =
(SELECT MAX(TS3.StageMid)
FROM tblTideStages AS TS3);
After you do that, you have a table with the start and end of each time zone for each tide, and your query against your sightings becomes almost trivial.
Note: I made the simplifying assumption that all your sensors are in the same tidal zone. My ancient science courses tell me that the time of high tide changes by about a minute per 25 kilometers in longitude (east-west movement). If this isn't significant for your purposes, then that's great. If the sensors were spread over a wider area, then you might need to have a "time offset" for each sensor (easiest) or have separate records on the tide table for each sensor (more complicated).