Collapse column

Autor Thema: Office 2010: Office 2010: Selektierter Eintrag aus Kombobox als tartwert in Listbox übernehmen  (Gelesen 1957 mal)

Offline hziemer

  • Newbie
  • *
  • Beiträge: 49
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Hallo liebe Forenmitglieder

Ich sitze mal wieder an meinem Endlosprojekt und versuche folgendes zu lösen:

In einer Userform selektiere ich mittels einer ComboBox einen Artikel. Diese Lste ist ohne doppelte Artikel.
--> Das funktioniert

Nun soll nachdem der Artikel selektiert wurde, alle Zeilen dieses Artikels in einem Listfeld mehrspaltig angezeigt werden. Diese kommen von einem anderen Tabellenblatt. Wie setzte ich genau bei diesem Artikel auf und zeige genau diese Zeilen?
--> Hier habe ich Probleme beim befüllen

Spaltenüberschriften und Breite der Spalten der Liste
--> Das funktioniert

Wer kann mir dabei helfen? Ein Beispiel genügt.

Danke für eure Mühe

Liebe Grüße aus dem sonnigen Schwabenland
hziemer
« Letzte Änderung: Dezember 10, 2015, 11:36:22 Vormittag von hziemer »

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline maninweb

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1.063
    • Profil anzeigen
    • Excel Formula Translator
  • Office-KnowHow: Experte
  • VBA-KnowHow- : Sehr gut
  • Version [Office] : Office 2016
Hallo,

anbei ein Rahmencode. Tabelle in Schleife durchlaufen (im Beispiel Bereich ab Zelle A1), Artikel vergleichen
und dann der ListBox hinzufügen. Erste Spalte kannst Du in der ListBox als Index verwenden, zum späteren
Wiederfinden der Zeile.
Code: Visual Basic
  1.   Dim n As Long
  2.   Dim k As String
  3.  
  4.   ListBox1.ColumnCount = 5
  5.  
  6.   With ThisWorkbook.Worksheets("Quelltabelle")
  7.  
  8.     For n = 1 To 100
  9.      
  10.       k = .Cells(n, 1).Value
  11.      
  12.       If Not k <> Combobox1.List(Combobox1.ListIndex, 0) Then
  13.        
  14.         ListBox1.AddItem
  15.        
  16.         ListBox1.List(ListBox1.ListCount - 1, 0) = CStr(n)
  17.         ListBox1.List(ListBox1.ListCount - 1, 1) = CStr(.Cells(n, 2).Value)
  18.         ListBox1.List(ListBox1.ListCount - 1, 2) = CStr(.Cells(n, 3).Value)
  19.         ListBox1.List(ListBox1.ListCount - 1, 3) = CStr(.Cells(n, 4).Value)
  20.         ListBox1.List(ListBox1.ListCount - 1, 4) = CStr(.Cells(n, 5).Value)
  21.        
  22.       End If
  23.      
  24.     Next
Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) from 01/2011 - 06/2019
https://de.excel-translator.de :: Online Excel-Formel-Übersetzer :: Alle Übersetzungen der Excel Funktionen & Fehlerwerte

Offline hziemer

  • Newbie
  • *
  • Beiträge: 49
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Hallo mainweb

Zuerst einmal Danke für die schnelle Hilfe.

So selektiere ich den Artikel
      If ComboBox1.Text = Trim(CStr(Tabelle12.Cells(lZeile, 1).Value)) Then
                TextBox1 = Trim(CStr(Tabelle12.Cells(lZeile, 1).Value))
                TextBox2 = Format(Tabelle12.Cells(lZeile, 3).Value, "0.000")
                TextBox4 = Format(Tabelle12.Cells(lZeile, 2).Value)
                TextBox5 = Format(Tabelle12.Cells(lZeile, 4).Value, "0.000")
                TextBox6 = Format(Tabelle14.Cells(lZeile, 2).Value)
                TextBox7 = Format(Tabelle14.Cells(lZeile, 4).Value, "0.000")
                TextBox8 = Format(Tabelle12.Cells(OZeile, 7).Value, "#,###")
                TextBox9 = Format(Tabelle14.Cells(OZeile, 7).Value, "#,###")
      End if
und befülle dann die 7 Maskenfelder mit den Artikeldaten.

Jetzt möchte ich mit dem Artikelnamen aus einer anderen Tabelle (Tabelle17 oder Name= 'Tipps'
die Listbox füllen.
Ich bekomme die Überschriften der Tabelle hin, aber mit deinem Rahmencode komme ich nicht weiter.
Die Verbindung mit dem Artikelnamen in Tabelle12 und allen Artikeln aus Tabelle17 zur Ausgabe in der Liste funktioniert nicht.

      If Not k <> Combobox1.List(Combobox1.ListIndex, 0) Then
      ListBox1.AddItem

Hier muss eine andere mir nicht erkennbare Logik rein.


Danke für Deine Mühe

Liebe Grüße aus dem dunklen Schwabenland
hziemer
« Letzte Änderung: Dezember 12, 2015, 18:38:20 Nachmittag von hziemer »

Offline maninweb

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1.063
    • Profil anzeigen
    • Excel Formula Translator
  • Office-KnowHow: Experte
  • VBA-KnowHow- : Sehr gut
  • Version [Office] : Office 2016
Moin,

hättest Du die Möglichkeit eine Beispieldatei hochzuladen?

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) from 01/2011 - 06/2019
https://de.excel-translator.de :: Online Excel-Formel-Übersetzer :: Alle Übersetzungen der Excel Funktionen & Fehlerwerte

Offline hziemer

  • Newbie
  • *
  • Beiträge: 49
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2010
Hallo mainweb

Ich habe das Projekt erst mal auf Eis gelegt.
Keine Zeit um daran weiter zu arbeiten.
Auf jeden Fall vielen Dank für Deine Antworten.

Frohe Weihnachten

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.