Thema Datum  Von Nutzer Rating
Antwort
24.08.2018 15:14:34 Jessi
NotSolved
24.08.2018 18:45:04 Mackie
NotSolved
24.08.2018 19:17:53 Gast88282
NotSolved
Blau Listbox.Select Fehlerhaft
25.08.2018 16:54:15 Gast62197
NotSolved

Ansicht des Beitrags:
Von:
Gast62197
Datum:
25.08.2018 16:54:15
Views:
470
Rating: Antwort:
  Ja
Thema:
Listbox.Select Fehlerhaft

So nocheinmal etwas besser formatiert. Es tut mir sehr leid, ich habe auf der Arbeit leider nur Internet Explorer zur Verfügung. Da habe ich die Formatierung nicht einstellen können. 

 

Hallo zusammen !

Ich hoffe, mir kann jemand helfen. Und zwar habe ich eine UserForm1, auf dieser befinden sich 2 Listboxen. Davon ist eine mit und eine ohne Multiselect. Die Listboxen selektieren Informationen aus einer Excel-Datei "Basis.xlsx". Diese wird zukünftig immer neu aus SAP generiert. Anhand dem Makro in der Excel-Datei "Zieltabelle.xlsm" werden die Daten selektiert/zusammengefasst. Und hier liegt mein Problem. Wenn ich die Auswahl der Userform1 bestätige, wird eine zweite UserForm2 aufgerufen. Auf der zweiten UserForm2 sind zwei Schaltflächen. Eine Schaltfläche dient dazu einen neuen Datensatz hinzuzufügen. Es sollen in den miteinander verbundenen Zellen "A7:A11" der ausgewählte Eintrag aus der Listbox1 stehen und in den verbundenen Zellen "B7:B11" die Auswahl der Listbox2. Die Listbox1-Auswahl bleibt stets gleich, während Listbox2 eine MultiSelect-Listbox ist. Das Problem an meinen Code ist, dass die Schleife an sich funktioniert. Jedoch werden die ausgewählten Einträge nicht erkannt. Es wird von der Abfrage If Userform1.Listbox2.Selected(I) stets "False" zurückgegeben, auch wenn Elemente ausgewählt sind. Dementsprechend brauche ich bitte eure Hilfe ! Ich habe den Code zum Selektieren anhand der Listboxen in die UserForm1 geschrieben, Der nachfolgenden Code steht in UserForm2 und außerdem habe ich noch eine Schaltfläche in der Exceltabelle "Zieltabelle; Blatt: Kostenübernahme", die über ein Modul aufgerufen wird. Vielleicht liegt hier mein Fehler?

Mein Code:

Private Sub ButtonNeu_Click() 

Dim LZZiel As Integer 
Dim I As Integer 

Windows("Zieltabelle.xlsm").Activate 
     With Workbooks("Zieltabelle.xlsm").Worksheets("Kostenübernahme") 
          For I = 0 To Userform1.listbox2.ListCount - 1 
               ' MsgBox Userform1.listbox2.Selected(I) (War nur eine kleine Überprüfung) 
               If Userform1.listbox2.Selected(I) Then 
                    .Range("A7:A11").Value = Userform1.listbox1.List() 
                    .Range("B7:B11").Value = Userform1.listbox2.List(I) 'Ab hier ists eigentlich uninteressant
                    .Range("A5:F18").Copy LZZiel = .Cells(Rows.Count, 3).End(xlUp).Row 
                    .Range("A" & LZZiel + 2).Select 
                    ActiveSheet.Paste 
                    LZZiel = .Cells(Rows.Count, 3).End(xlUp).Row 'LZZiel Aktualisieren nach dem Einfügen 
                    .Cells(LZZiel - 11, 6).Value = Date 
               End If 
          Next 
     End With 
Unload Userform2 
End Sub 

Es werden alle Listbox-Einträge durchgezählt. Jedoch wird nicht erkannt, welche ausgewählt werden. Bitte helft mir !

 

 

@Gast88282

Ich habe ein Tabellenblatt "Tabelle1" in einer ExcelDatei namens "Basis.xlsm". Diese Datei wird zukünftig immer neu aus SAP generiert, weshalb ich hier kein Makro einfügen kann. Die Datei "Zieltabelle.xlsx" soll in Zukunft dann die Daten aus SAP selektieren. in der Spalte D in "Tabelle1" befinden sich alle Daten, die in die verschiedenen Listboxen eingefügt werden.

In Listbox1 sind die Bezeichnungen, also nur Text, zu der die Daten hinzugefügt werden (Range A7:A11).

Die Listbox2 beinhaltet eine Bezeichnung für Elemente, die alle mit einem "P" anfangen und daraufhin verschiedene Zahlen, mal 4, mal 8, mal mit einem Zeichen getrennt.

Die Listbox2 wird gefüllt durch Listbox.AddItem (x), wobei eine Schleife die Spalte D durchläuft, sodass die Einträge für Listbox2 nach dem ersten Buchstaben "P" durchsucht werden. Listbox1 wird durch einen vorgegebenen Array mit Text befüllt. Alle Listboxen sind einspaltig. 

Der Text aus Listbox1 soll in einen verbundenen Bereich übertragen werden. Während für die jeweils ausgewählten Werte aus Listbox2 immer der Bereich kopiert werden soll und neu eingetragen wird.

Eigentlich ist das gar nicht weiter wichtig in meinen Augen, da dieselbe Abfrage im Code der Userform 1 in allen Fällen klappt. Ich vermute, es gibt ein Problem damit, dass die Userform2 eingeblendet wird und dadurch die Listbox der Userform1 nicht mehr erkannt wird... Denn bei beiden Abfragen, ob ich Listbox 1 oder 2 auswähle, wird nicht erkannt, dass ein Wert ausgewählt wird.

Wie gesagt es funktioniert eigentlich alles so wie ich möchte. Das Problem ist, dass nicht erkannt wird, ob ein Wert ausgewählt wird. 

Das Ergebnis bei  If Userform1.listbox2.Selected(I) Then  ist immer Falsch, auch wenn alle Werte ausgewählt sind. 

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
24.08.2018 15:14:34 Jessi
NotSolved
24.08.2018 18:45:04 Mackie
NotSolved
24.08.2018 19:17:53 Gast88282
NotSolved
Blau Listbox.Select Fehlerhaft
25.08.2018 16:54:15 Gast62197
NotSolved