HI John,
Badunit's suggestion is leading to a Numbers solution that is almost identical to what you've described for Excel.
Sheet 1 would contain the master table, containing the data for all clients and their visits, including your notes on each session.
Sheet 2 would contain a single table (to start with) set out as Badunit described to lookup and return all of the data from visits of a single client, whse name is entered ONCE in a specific cell of this table.
With those two tables created and the formulas entered into the second, you could simply enter a client name in the specified cell, and all records on the first table for visits by that client would be immediately copied to a list in the second table.
Removing the name from the specific cell would immediately remove all of that client's data from that table (with no effect on the first table). Entering the name of a different client into the specific cell, replacing the existing name would remove the existing data and place the data for the new client.
Making duplicates of the second table will produce new independent copies of that table. These can be places on the same Sheet or on different sheets. Like the first copy, each of these tables will display data for the client names in the specific cell on that copy of the second table.
Here's a tiny example:
Main Table and one Client Table:

Same two tables, with name changed in Client 1::B1

If a single table with one entry needed to display the data for any one of your clients won't fit your needs, the second table (Clients 1) could be duplicated as many times as needed to supply a copy for each of your clients, or for as many as you need instant acess to at any one time.
Entering the name of a client in the designated specific cell would then populate that table with the data for the client named on that table.
Example with three copies of the client table:

The copied Tables could be placed on separate sheets or on a single sheet.
Each of these would require client session notes to be recorded on the Main table, rather than on the Client tables which contain no entered data (other than the name of the client in B1.
Each of the Client tables contains the formula below, entered in Cell A2 and filled down and right to cell to the last cell in Column F. Additional copies, as needed, should be automatically added as new rows are added to accommodate data from more sessions.

Column G of the Main table is an index column providing search values for the MATCH function in the formula on the Client tables. The values are concatenations of the name i column B and the number of times that name has occurred from row 2 to 'this row' of column B.
In Main::G2:
IF(B2="","",B2&COUNTIF(B$1:B2,B2))
Fill down to end of column G.
Regards,
Barry