Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.

Tip of the Day
Language: Visual Basic
Expertise: Intermediate
Jul 30, 1999



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Adding Multiple Delimited Entries to a List Box

The typical way of entering user-specified data into a list box is one entry at a time; however, you can accept multiple delimited entries at once and add them to a list box with a call to this function. Passing the function a delimited string fills the list box with the values; the list box can be cleared first if requested in the bClear parameter. If you pass an empty string, the values from the list box are used to create a delimited string:

Function ConvertList(cList As Control, ByVal sText As _
	String, ByVal sDelimiter As String, Optional bClear As _
	Boolean = False) As String
	Dim lLoop As Long
	Dim lFind As Long

	If Len(sText) Then
		If bClear Then cList.Clear
			lFind = InStr(sText, sDelimiter)
			If lFind Then
				cList.AddItem Left$(sText, lFind - 1)
				sText = Mid$(sText, lFind + 1)
			End If
		Loop Until lFind = 0
		If Len(sText) Then cList.AddItem sText
		For lLoop = 0 To cList.ListCount - 1
			If lLoop = cList.ListCount - 1 _
				Then sDelimiter = vbNullString
			ConvertList = ConvertList & cList.List(lLoop) _
				& sDelimiter
		Next lLoop
	End If
End Function

Here's how you can call it to fill a list, then output the same list using a different delimiter:

Call ConvertList(List1, "yellow|green|red", "|", True)
Debug.Print ConvertList(List1, "", "/")
Jeffrey Renton
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date