Ok, so Data1 is a byte array? How about this:
Dim ms As New MemoryStream(Data1)
Dim buffer(2) As Byte
For count As Integer = 0 to (Data1.Length / 3) -1
ms.Read(buffer, 0, 3)
Next
The memorystream will pull 3 bytes off and fill buffer with them until all the bytes in Data1 have been read.
- Pete