The index does not change.
Much like an array has an index number in order to access each element in the array, so does a listbox has an index that is determined by the number of items in the list.
The index will always start at 0 and will increment with each item in the list.
For example, here is a list of names, lets assume for the moment that they are stored in a listbox. There are a total of 4 items in the list and since the index starts at 0, then the index number of the last item in the list is 3.
Tom
Bill
Sammy
Jason
If I want to access the item that has an index of 0 in the list.
CODE
name = Listbox.Items.Item(0)
This will return the value of "Tom" and store it in the variable name.
If I want to access the item that has an index of 2 in the list.
CODE
name = Listbox.Items.Item(2)
This will return the value of "Sammy" and store it in the variable name.
Hopefully this will give you an idea of how it works.