Clever-Excel-Forum

Normale Version: Daten in Userform aus anderem Tabellenblatt einlesen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo liebe Excelfreunde.

ich bin dabei mir eine eigene Filmliste zu erstellen, die ich über eine Userform mir anzeigen lassen will und auch anschließend evtl. Änderungen eingeben möchte, die ich dann  wieder an das Tabellenblatt schicken kann.

Eine andere userform zum neu einbuchen neuer Filme habe ich dort schon.

Leider hänge ich fest, mir in der Userform "BluRayListe" die Daten aus der Tabelle in die Userform einlesen zu lassen.

Ich bitte euch um Hilfe.


Liebe Grüße
MdeJong
Hallo

hier mal den Code für die Suche
es wird nach dem Filmtitel aus Textbox19 in Spalte B gesucht


Code:
Private Sub CommandButton1_Click()
   Dim c As Range
   Dim strSuche As String
   strSuche = Trim(TextBox19.Text)
   If strSuche <> "" Then
       With Sheets("BluRay-Liste")
           Set c = .Columns(2).Find(strSuche, LookIn:=xlValues, lookat:=xlWhole)
           If Not c Is Nothing Then
               TextBox20.Value = .Cells(c.Row, 1).Value
               TextBox18.Value = .Cells(c.Row, 3).Value
               'und so weiter und sofort
           Else
               MsgBox "Film nicht gefunden"
           End If
       End With
   End If
End Sub

wenn du das Prinzip verstanden hast wirst du die restlichen TextBoxen selber befüllen können

MfG Tom
(11.11.2017, 14:35)Crazy Tom schrieb: [ -> ]Hallo

hier mal den Code für die Suche
es wird nach dem Filmtitel aus Textbox19 in Spalte B gesucht


Code:
Private Sub CommandButton1_Click()
   Dim c As Range
   Dim strSuche As String
   strSuche = Trim(TextBox19.Text)
   If strSuche <> "" Then
       With Sheets("BluRay-Liste")
           Set c = .Columns(2).Find(strSuche, LookIn:=xlValues, lookat:=xlWhole)
           If Not c Is Nothing Then
               TextBox20.Value = .Cells(c.Row, 1).Value
               TextBox18.Value = .Cells(c.Row, 3).Value
               'und so weiter und sofort
           Else
               MsgBox "Film nicht gefunden"
           End If
       End With
   End If
End Sub

wenn du das Prinzip verstanden hast wirst du die restlichen TextBoxen selber befüllen können

MfG Tom
Ich danke die....versuche es....sollte ich daran Verzweifeln, darf ich da auf deine Hilfe hoffe?  ;)
[attachment=14328]Hier noch einmal meine aktuell Filmliste mit Änderungen beim buchen für fortlaufende Filmnummernvergabe, wobei mir Crazy Tom so schön geholfen hat.

Danke noch einmal

Grüße

MdeJong
[attachment=14332]Hallo Crazy Tom,


danke noch einmal für die Anfangshilfe zum einlesen der daten in userform.

Habe fast alle Boxen füllen können, nur nicht die Listbox1.

Habe meine Mappe jetzt noch einmalhier hineingestellt.
In der ist in der userform "BluRayliste" noch ein Zusatzbutton für die Suche.
Suche über Maske....dort würde ich gerne einen Suchbegriff eingeben und wenn der Film gefunden wurde alles angezeigt wird.

Die TextBoxen geben noch nicht das genau Format wieder wie aus der Datentabelle.....aber ich denke, das man das Problem später bearbeiten könnte ,oder?

Gruß
MdeJong
[attachment=14334]Hallo Crazy Tom,


hier die Mappe mit kleinen Änderungen.

In der Maske Filme buchen habe ich eine Cobobox eingefügt für:

MedienTyp
genre
FSK
4K  Ja/nein

Dort will ich wie im Blatt Genre in den Comboboxen das passende auswählen und dann buchen???

Sorry:)

gruß

MdeJong
Hallo

was soll denn in den Listboxen erscheinen?
und warum Listboxen?
Listboxen sind doch eher für Listen, sacht doch schon der Name
in deiner Tabelle sind aber keine Listen die in der Listbox dargestellt werden könnten
ich würde die Suche auch nicht über eine neue Userform realisieren sondern dann eher schon mit einer Inputbox

diesen Code hinter den ursprünglichen Suchbutton


Code:
Private Sub CommandButton1_Click()
  Dim c As Range
  Dim strSuche As String
  strSuche = InputBox("Filmname eingeben", "Filmsuche")
  If strSuche <> "" Then
      With Sheets("BluRay-Liste")
          Set c = .Columns(2).Find(strSuche, LookIn:=xlValues, lookat:=xlWhole)
          If Not c Is Nothing Then
              TextBox20.Value = .Cells(c.Row, 1).Value
              TextBox18.Value = .Cells(c.Row, 3).Value
              TextBox16.Value = .Cells(c.Row, 4).Text
              TextBox14.Value = .Cells(c.Row, 5).Value
              TextBox17.Value = .Cells(c.Row, 6).Value
              TextBox13.Value = .Cells(c.Row, 7).Value
              TextBox15.Value = .Cells(c.Row, 8).Value
              TextBox12.Value = .Cells(c.Row, 9).Value
              TextBox10.Value = .Cells(c.Row, 10).Value
              TextBox11.Value = .Cells(c.Row, 11).Value
              ListBox1.Value = .Cells(c.Row, 12).Value
              TextBox21.Value = .Cells(c.Row, 14).Value
              'und so weiter und sofort
          Else
              MsgBox "Film nicht gefunden"
          End If
      End With
  End If
End Sub

nu muss ich erstmal Gassi gehen Wink

MfG Tom
Hi Tom,

deinen Code habe ich eingefügt...genau richtig.
dann kann meine Userform für die Suche ja weg  :)

Beim Filme buchen möchte ich für FSK, Genre, Medium Typ und 4K aus Beispiel, die ich im Blatt "Genre" hinterlegt habe auswählen mit klick.

Ich dachte, da muss man Listboxen nehmen?

Was nimmt man dann und wie ändert man den Code für das speichern ?


Gruß

MdeJong
Hallo

hier als Anregung mal für die Combobox1 (Genre)


Code:
Private Sub UserForm_Initialize()
   Dim lngZeile As Long
   Dim varGenre As Variant
   varGenre = Sheets("Genre").Range("A1:A20")
   With ComboBox1
       .List = varGenre
       .ListIndex = 0
   End With
   With Worksheets("BluRay-Liste")
   lngZeile = .Cells(.Rows.Count, 1).End(xlUp).Row
   TextBox1.Value = .Cells(lngZeile, 1).Value + 1
   End With
   TextBox1.Enabled = False
End Sub


MfG Tom
Hi Tom,


genau so meinte ich es :)

muss ich dann nur noch für deb Code so abändern?  um die anderen auch füllen zu lassen?

 
Private Sub UserForm_Initialize()
   Dim lngZeile As Long
   Dim varGenre As Variant
   varGenre = Sheets("Genre").Range("A1:A20")
   With ComboBox1
   varGenre = Sheets("Genre").Range("D2:D6")
   With ComboBox2
   varGenre = Sheets("Genre").Range("H2:H5")
   With ComboBox3
       .List = varGenre
       .ListIndex = 0
   End With
   With Worksheets("BluRay-Liste")
   lngZeile = .Cells(.Rows.Count, 1).End(xlUp).Row
   TextBox1.Value = .Cells(lngZeile, 1).Value + 1
   End With
   TextBox1.Enabled = False
End Sub



:)

Grüße
Seiten: 1 2