View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
Rich J[_2_] Rich J[_2_] is offline
external usenet poster
 
Posts: 38
Default Deleting blank values from an array

Thanks Dana, that looks like another good solution. I had taken Greg's code
and ran with it. A few name changes and a correction in my code and it works
great.

"Dana DeLouis" wrote:

I tried a filter routine but it created an error


If you had trouble with the Filter command on a 1-Dim array, you may not
have set it up correctly.
See if there are any ideas here that may help.
Filter won't work with blanks, so I hope this gets fixed in a future version
of Excel.

Sub Demo()
Dim v As Variant
ReDim v(1 To 10)

Const Flag As String = "xxx"
Dim j As Long

'// Small 1-D array
For j = 1 To 10
v(j) = j
Next j

'// Make two elements blank!
v(3) = vbNullString
v(7) = vbNullString

'// Scan for blanks
For j = 1 To 10
If v(j) = vbNullString Then v(j) = Flag
Next j

v = Filter(v, Flag, False)
End Sub

HTH :)
--
Dana DeLouis
Win XP & Office 2003


"Rich J" wrote in message
...
I have an array that gets populated with dates from various ranges in my
spreadsheet. In the process blank values also get included. Once filled,
I
would like to sort the array with the earliest date in H(0) and the blank
ones deleted by redimensioning the array.
I figured out one way to sort but the blank ones are all in the lower
indexes with the sorted dates at the end.
Is there an easy way to delete the empty elements of the array either
while
sorting or another routine after the sort ?
I used the sorting routines in this help site

http://support.microsoft.com/?kbid=213818
I tried a filter routine but it created an error
Thanks