Stuart McLachlan
stuart at lexacorp.com.pg
Fri Apr 18 18:53:30 CDT 2003
On 18 Apr 2003 at 15:48, Stoker, Kenneth E wrote: > Everyone, > > Is there a built-in function in VBA that will compare two strings and > return the difference of the two? I want to remove values from a > listbox so I thought I could set one variable to the listbox rowsource > and another variable to the listbox itemsselected and return the > difference of the two. If there is a built-in function, I would > rather use that than create my own, but will if I have to. > The problem with doing this sort of thing on strings is resynchronizing your two string position pointers after you come across the first difference. >From what you describe here, it looks as tough you are talking about complete items, not partial strings so *could* do as long as you used unique delimiters between the items - But you would be far better of treating the list items separately rather than trying to build strings containing all the items and then have to extract them again for comparison. Actually, the simplest way I can see to do this doesn't use extras strings or arrays: Dim loopcount As Long Dim strNewList as sting For loopcount = 0 To List2.ListCount If Not List2.Selected(loopcount) Then strNewList = strNewList & List2.ItemData(loopcount) & ";" End If Next strNewList = Left$(strNewList, Len(strNewList) - 1) List2.RowSource = strNewList -- Lexacorp Ltd http://www.lexacorp.com.pg Information Technology Consultancy, Software Development,System Support.