Dear Rick I am your loyal reader and read your blogs regularly. I benefited a lot from your blog and really appreciate your sharing. I recently encountered one wierd problem. I found I cannot call one macro in another macro repeatedly. In my macro A, I have do loop, "%do i=1 %to &fcount" with "%end". In this do loop, I try to call another macro B. However, I found as long as I call macro B, the B job was done for this cycle, but then the macro A stopped. Anything after macro B in the macro A was not executed. And the following do loop was not executed.(no loop at all). I used another method "%sysfunc(getvarc)" and the macro B was not executed in the do loop created by using the %sysfunc method. I got really lost. I wrote programs using macro for many times, and this is the first time I use %do--%end loop and got failed. Could you tell me what mistake I made? If you need my program, I can show you. Thanks! Vivian