Mit Userform Listen bearbeiten!
#1
Hallo liebe Excelgemeinde,


bräuchte mal wieder eure Hilfe :).

Ich möchte mit einer Userform Daten Spaltenweise bearbeiten und Begriffe jeweils einfügen oder löschen!

In meine Beispieltabelle in Spalte A die Farben, Spalte B das Material und Spalte C die Kathegorie!
Nun möchte ich über die Userform in der Combox (die Automatisch mit den Überschriften aus Tabelle1 befüllt werden soll) z.B. Farbe auswählen, dann sollen automatisch alle Farben in der Listbox erscheinen, diese würde ich gerne in der Listbox auswählen und mit dem CommandButton "Löschen" löschen können einzeln!
Mit dem CommandButton "Hinzufügen" möchte ich gerne in der Listbox und in der Tabelle natürlich neue Farben hinzufügen können oder Kathegorien!

Die absolute Krönung wäre wenn Sich die Spalte nach Hinzufügen oder Löschen eines Begriffes automatisch alphabetisch sortiert!


Da ich nicht programmieren kann würde ich mich über möglichst viel Hilfe freuen!

Ich hoffe ich habe mich etwas verständlich ausgedrückt! :)


Vielen Dank schon mal für eure Hilfe
VG
Alexandra


Angehängte Dateien
.xlsm   Attribute bearbeiten - Kopie.xlsm (Größe: 22,41 KB / Downloads: 13)
Top
#2
Hallo zusammen,


habe jetzt mit meinen Möglichkeiten :) ein wenig gebastelt!
Und es funktioniert zum größten Teil :)

Was ich allerdings nicht hinbekomme, ist:

1. Die Sortierfunktion, dass diese je nachdem in welche spalte was hinzugefügt wurde oder gelöscht wurde sortiert wird und zwar den Bereich von Zeile 2 bis zur letzten gefüllten Zelle in der jeweiligen Spalte!
2. Die Namen im Namenmanager würde ich auch gerne flexibel gestalten also bis zur letzten befüllten Zelle!

Kann mir hier jemand helfen?


Vielen Dank im Voraus
VG
Alexandra


Angehängte Dateien
.xlsm   Attribute bearbeiten - Kopie - Kopie.xlsm (Größe: 31,64 KB / Downloads: 15)
Top
#3
Hallo Alexandra,

versuche mal mein Teil (das mit den Namen habe ich nicht beachtet)


Angehängte Dateien
.xlsm   re_Beispieldatei Userform Rückkehr.xlsm (Größe: 36,29 KB / Downloads: 12)
Gruß Stefan
Win 10 / Office 2016
Top
#4
Hi Steffl,


ist das die richtige Datei? Das ist doch die andere Datei mit den Userform bei Rückkehr die du angehängt hast!?


Vielen Dank
VG
Alexandra
Top
#5
Hi Alexandra,

Zitat:2. Die Namen im Namenmanager würde ich auch gerne flexibel gestalten also bis zur letzten befüllten Zelle!

schau dir doch mal das Video von Andreas Thehos an. Ab 2:45 dürfte deine Frage beantwortet werden.


Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
[-] Folgende(r) 1 Nutzer sagt Danke an WillWissen für diesen Beitrag:
  • cysu11
Top
#6
Hallo Alexandra,

(19.06.2014, 17:01)cysu11 schrieb: ist das die richtige Datei? Das ist doch die andere Datei mit den Userform bei Rückkehr die du angehängt hast!?

Du hast Recht, war die falsche Datei.Sadsmiley


Angehängte Dateien
.xlsm   re_Attribute bearbeiten - Kopie.xlsm (Größe: 23,09 KB / Downloads: 27)
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • cysu11
Top
#7
Hallo Steffl,


einfach nur perfekt!! :15:

Gibt es noch die Möglichkeit beim Hinzufügen, zu prüfen ob Begriff bereits vorhanden?


Vielen Dank
VG
Alexandra
Top
#8
Hallo Günter,


dein Link war genau das was ich gesucht habe!

Vielen lieben Dank
VG
Alexandra
Top
#9
Hallo Alexandra,

meinst Du so?

Code:
Private Sub cmdHinzufügen_Click()
   Dim strEingabe As String
   Dim lngLetzteZeile  As Long
   Dim rngVorhanden As Range
   'eine Inputbox für die Neuaufnahme eines Produktes
   strEingabe = InputBox("Geben Sie ein Produkt ein", "Neueingabe")
   'wenn in der Inputbox nichts eingetragen, abbrechen gedrückt oder die ComboBox nichts enthält verlasse die Sub
   If strEingabe = "" Or ComboBox1.ListIndex = -1 Then Exit Sub
   With Worksheets("Tabelle1")
      Set rngVorhanden = .Columns(rngUberschriften.Column).Find(strEingabe, LookIn:=xlValues, lookat:=xlWhole)
      If Not rngVorhanden Is Nothing Then Exit Sub
      'erste leere Zelle in der betreffenden Spalte suchen
      lngLetzteZeile = .Cells(.Rows.Count, rngUberschriften.Column).End(xlUp).Row + 1
      'wert eintragen
      .Cells(lngLetzteZeile, rngUberschriften.Column).Value = strEingabe
      'und sotrieren
      .Columns(rngUberschriften.Column).Sort key1:=.Cells(1, rngUberschriften.Column), order1:=xlAscending, Header:=xlYes
   End With

End Sub
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • cysu11
Top
#10
Hallo Steffl,


perfekt, genau so meinte ich es :)


Vielen lieben Dank
VG
Alexandra
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste