As far as
creation of GUID[
^] goes, its just:
Dim numGuid As Guid = System.Guid.NewGuid();
Now, this looks ok in your code. But what you have done after that is something you need to explain and look at. It looks like you are just trying to pick numbers from the generated GUID and assign that as bill number. If your intention of doing this was to have a unique bill number always then I am sorry to say so, this implementation/approach is incorrect.
Guid as a whole (with combination of number & string) is unique. Picking only numbers from it will not assure uniqueness.