2017-01-10 4 views
0

Ich versuche, eine Listbox zu machen, die leere Zellen in Zeilen entfernt. In Spalte A habe ich einige Zellen, die Daten enthalten, und einige, die leer sind. Ich kann die leeren Zeilen nicht löschen, da sie in anderen Spalten Daten enthalten. Wie kann ich die nicht leeren Zellen rowsource in einer listbox machen?Eliminierung von leeren Zellen in Listbox rowsource

Antwort

1

Wie über eine Schleife, die es überprüft, ob ein Wert in jeder Zelle ist:

Dim CountLng as Long 

'Set CountLng to maximum row in column A that you would like to search for. 
'This example uses the number of rows in the entire used range of the worksheet 

CountLng = ActiveSheet.UsedRange.Rows.Count 

With listbox1 

    ' Loop over each cell in the column A 
    For x = 1 To CountLng 

     ' If the cell is not blank then add it as a list item 
     If ActiveSheet.Range("A" & x).Value <> "" Then 

      .AddItem ActiveSheet.Range("A" & x).Value 

     End If 

    Next x 

End With 
+0

Groß bearbeiten @Wolfie. Vielen Dank! –

+0

@wolfie: enthält ActiveSheet.UsedRange.Rows.Count leere Zellen in der Zählung? –

+0

Ja, 'UsedRange' kann ein wenig temperamentvoll sein, weil es sich manchmal an eine größere Bandbreite" erinnert ", als Sie jetzt tatsächlich verwenden! Es geht jedoch von "A1" (vorausgesetzt, dass eine Zelle in Zeile 1 und eine Zelle in Spalte A einmal etwas in ihnen hatte) zu der Zelle, die immer unten verwendet wird. Spielen Sie herum und sehen Sie hier nach mehr: http://stackoverflow.com/questions/7423022/getting-the-actual-ususedrange – Wolfie

Verwandte Themen