Search Tools Links Login

Remove a Record from an Array


Remove any record from an array, without leaving a gap in the records.

Option Explicit

Private Type my_type
   field1 As String
   field2 As Long
   field3 As Integer
End Type

Const MAX_ARRAY = 10
Dim my_array(0 To MAX_ARRAY - 1) As my_type

'Delete the record RecPos (from 0 to MaxRecs)...MaxRecs is the maximum array dimension
Public Sub DeleteRecordFromMyArray(RecPos As Integer, MaxRecs As Integer)
   Dim i As Integer

   'Move all the record forward by one position
   For i = RecPos To MaxRecs - 1
      my_array(i) = my_array(i + 1)
   Next
   'Reset the last array record
   my_array(MaxRecs).field1 = ""
   my_array(MaxRecs).field2 = 0
   my_array(MaxRecs).field3 = 0
End Sub

Usage

Private Sub Command1_Click()
   DeleteRecordFromMyArray 3, MAX_ARRAY - 1
End Sub

About this post

Posted: 2019-08-24
By: AndreaTincani
Viewed: 252 times

Categories

Visual Basic 6

Attachments

No attachments for this post

Special Instructions

This code originally appeared on AndreaVB.com, and has been republished here with the permission of Andrea Tincani.


Loading Comments ...

Comments

No comments have been added for this post.

You must be logged in to make a comment.