You can achieve this using the DB Manager of QGIS.
You choose Database / Database Manager / Database Manager then Virtual Layers / Qgis Layers
You can then try the following query :
from grid, region_layer reg
where st_intersects(grid.geometry, reg.geometry)
group by grid.id
grid_layer being your grid layer and reg_layer being your region layer...
This query generates the id of the cell followed by the surface of intersection and the region's name.
You can then load the result in the layer manager. You can also join this resulting layer to your grid layer if you want to insert the region's name in your initial table.
PS : adapt the query according to your data structure ...
According to your data structure the query should look like this :
from prio_gid, GADM36_KEN_1
group by prio_gid.gid