If this VI already works for your current application, and you are just looking to streamline it then change the comparison going into the case statement from "less-than or equal to",to just "less-than". Also you must modify the cluster which goes into the resize 2D string. As the code is now, where the cluster goes into the +1 function, it will add both a column and a row. From what you say, you must break the cluster up and only add one to the row and not the column, rebundle it and send it to the subVI.
If you would like a simplified version, all you need to do is
- get the current elements in the listbox using the ItemNames property
<- insert the new data into the array you just got from the property node using the Insert into arrayB> function
- determine the number of rows in the resulting array using the Array Size function
- Change the visible rows to however many you need in the listbox using the Num Rows property
- and finally put the new dataset into the table by once again using the Item Names property