Try this:
%let codes = '78060', '7784', '4659', '07999', '46611', '77989', '5990', '53081', '27651', '77189', '44619', '77982', '77931', '7746', 'V290', '77182', '7755', 'V070', '6910', '78791';
data patients;
set source_table;
array a_dx dx_code1-dx_code41;
do i = 1 to dim(a_dx);
if find("&codes",cats("'",a_dx,"'")) then do; /* You have a true result, no point testing remaining array cells */
output; /* Save the current record */
return; /* Move on to the next record */
end;
end;
run;