How to force a matlab script to rerun the script from the beginning

Illustration
Cris LaPierre - 2021-10-08T13:21:02+00:00
Question: How to force a matlab script to rerun the script from the beginning

How to force a matlab script to rerun the script from the beginning using list items and if statement? I have the following code:   % Here is the Main Code that does stuff % After the code has done some stuff the user is left with three options: list = {'text1','text2','RERUN_SCRIPT'}; [indx] = listdlg('SelectionMode','single','ListString',list); % with the following if statements if indx == 1 % code for importing works end if indx == 2 % code for deleting unwanted external files work end if indx == 3 % I cannot find a direct method to start the script again. end Also there is one problem: While my list is active I cannot edit my figure in the main code. Is there an option, even by default, allow an active edit of figures, etc. while list is active?  

Expert Answer

Profile picture of Kshitij Singh Kshitij Singh answered . 2025-11-20

Scripts execute from top to bottom. MATLAB does not have a GOTO command. However, you can accomplish this by reorganzing your code. For example, consider putting all the code you want to rerun inside a while loop, and repeat that loop as long indx==3.
 
 
indx == 3
while indx == 3
    % After the code has done some stuff the user is left with three options:
    
    list = {'text1','text2','RERUN_SCRIPT'};
    [indx] = listdlg('SelectionMode','single','ListString',list);
    
    % Use a switch statement. The loop will continue execution as long as the user selects 'rerun'    
    switch indx
        case 1
        % code for importing works
        case 2
        % code for deleting unwanted external files work
    end
end


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!