[Gelöst] Nicht ausgewählte ListBox einträge auslesen?
Verfasst: Mo, 31.01.2011 18:55
Hallo, ich habe mal wieder ein Problem,
ich habe einen Dialog mit einer ListBox, der hat 15 Einträge
Hier der Teil aus dem anderen Code der benötigt wird.
Ich Habe eine Vorlage mit mehreren Sheets. Es sollen aber nur die ausgewählten bleiben, die anderen sollen gelöscht werden.
Wie bekomme ich das (oNichtAusgewält) Array, in dem nur die Listeneinträge sind, die nicht Ausgewählt wurden.
Kann mir da wer helfen?
*Edit
So hier die Lösung des Problems. Es werden die beiden Arrays verglichen und ein neues erstellt.
ich habe einen Dialog mit einer ListBox, der hat 15 Einträge
Code: Alles auswählen
Sub StandortlistenDialog
DialogLibraries.LoadLibrary("Standard")
oDialog = createUnoDialog(DialogLibraries.Standard.StandortlistenDialog)
oView = oDialog.getView()
oModel = oDialog.getModel()
oBut = odialog.getControl("ListBox1").getModel()
oDialog.execute()
Endsub
Code: Alles auswählen
oAuswahl = odialog.getControl("ListBox1").getSelectedItems()
oAlleEintraege = odialog.getControl("ListBox1").getItems()
oTabelle = oDoc.sheets.removeByName(oNichtAusgewält)
Wie bekomme ich das (oNichtAusgewält) Array, in dem nur die Listeneinträge sind, die nicht Ausgewählt wurden.
Kann mir da wer helfen?
*Edit
So hier die Lösung des Problems. Es werden die beiden Arrays verglichen und ein neues erstellt.
Code: Alles auswählen
Sub ListenVergleichen
rem-----------Anfang
Dim found
f = 0
For m = 0 To UBound(aAllQueries)
For t = 0 To UBound(aQueries)
If UCase(aAllQueries(m)) = UCase(aQueries(t)) Then
'match
found = false
exit for
Else
'no match
found = true
End If
Next
If found Then
ReDim Preserve aQueriesUnselected(f)
aQueriesUnselected(f) = aAllQueries(m)
f = f + 1
End If
Next
For z = 0 To UBound(aQueriesUnselected)
oTabelle = oDoc.sheets.removeByName(aQueriesUnselected(z))
Next
rem-----------Ende
End sub