Could make it a macro...
%macro overwrite(dset);
/*IF THE DATASET NAME CONTAINS A . THEN EXTRACT THE LIBNAME AND DATASET NAME*/
%if %index(&dset,%str(.))>0 %then
%do;
%let lref=%upcase(%scan(&dset,1,%str(.)));
%let dsname=%upcase(%scan(&dset,2,%str(.)));
%end;
%else
/*ELSE ASSUME LIBNAME IS WORK*/
%do;
%let lref=WORK;
%let dsname=%upcase(&dset);
%end;
/*CONFIRM DATASET_NEW EXISTS BEFORE AGING*/
%if %sysfunc(exist(&dset._new)) %then
%do;
/*RENAME DATASET_NEW TO DATASET AND REMOVE THE OLD DATASET*/
proc datasets lib=&lref.
nolist;
age &dsname._new &dsname.;
quit;
%end;
/*ELSE THROW ERROR TO STATE AGING NOT DONE*/
%else
%do;
%put ERROR: Dataset &dset._new does not exist;
%end;
%mend;
data x;
x=1;
run;
data x_new;
x=2;
run;
%overwrite(x);