Solved

Problem to skip loop

Posted on 2016-09-08
6
70 Views
Last Modified: 2016-09-08
Hi,
I want to skip the loop below, per relevant conditions are matched
    Do While True
        ...

            If Trim(Worksheets(List0).Cells(RowID, 8).Value) <> "" And InStr(User_List, ";" & Trim(Worksheets(List0).Cells(RowID, 8).Value)) = 0 Then Continue Do
            End If

Open in new window

but I get 'Syntax Error' due to 'Continue Do'. What to adjust?
0
Comment
Question by:HuaMinChen
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
6 Comments
 
LVL 43

Expert Comment

by:Saqib Husain, Syed
ID: 41789181
Exit do is used to skip loop

do while condition
     if certain condition then
             exit do
     endif
loop
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 41789182
If you want to leave the Do loop then use Exit Do
0
 
LVL 11

Author Comment

by:HuaMinChen
ID: 41789187
No, I only want to skip one iteration, and not to leave the whole loop.
0
SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

 
LVL 33

Assisted Solution

by:Rob Henson
Rob Henson earned 100 total points
ID: 41789190
In which case just have an If statement within your Do Loop:

Do
  If Condition Then
    Code 1
  Else
    Code 2
  End If
Loop

Alternatively you could use the Select Case format within the Do Loop.
0
 
LVL 43

Accepted Solution

by:
Saqib Husain, Syed earned 400 total points
ID: 41789200
Using your syntax

Since you also have an "End If" then there should be nothing after the "Then" in the same line. It should go to the next line.
If you put no code after "Then" it will automatically continue with the do loop. You do not have to tell it to do so.
The "Else" is to handle the other condition not satisfied by the if.

    Do While True
        ...

            If Trim(Worksheets(List0).Cells(RowID, 8).Value) <> "" And InStr(User_List, ";" & Trim(Worksheets(List0).Cells(RowID, 8).Value)) = 0 Then 

            else
                    do what you want to do otherwise
            End If

Open in new window

0
 
LVL 43

Expert Comment

by:Saqib Husain, Syed
ID: 41790715
Looks like you are not fully satisfied with the answer.
0

Featured Post

[Webinar] Learn How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them. Thursday, July 13, 2017 10:00 A.M. PDT

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Use Windows Task Scheduler to print a Word document weekly so your printer ink won't dry out.
This article describes a serious pitfall that can happen when deleting shapes using VBA.
This Micro Tutorial will demonstrate on a Mac how to change the sort order for chart legend values and decrpyt the intimidating chart menu.
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question