3.8k Aufrufe
Gefragt in Tabellenkalkulation von hwr Einsteiger_in (41 Punkte)
Hallo zusammen,

ich habe ein Userform mit einer Listbox, in der Listbox werden die Zeilen der Tabelle "Jan" angezeigt, durch einen Doppelclick werden die Daten wieder in Das Userform eingelesen

Code:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

TextBox1.Value = ListBox1.List(Me.ListBox1.ListIndex, 1)
TextBox3.Value = ListBox1.List(Me.ListBox1.ListIndex, 2)
ComboBox2.Value = ListBox1.List(Me.ListBox1.ListIndex, 3)
TextBox4.Value = ListBox1.List(Me.ListBox1.ListIndex, 4)
TextBox5.Value = ListBox1.List(Me.ListBox1.ListIndex, 5)
TextBox2.Value = ListBox1.List(Me.ListBox1.ListIndex, 0)
ComboBox3.Value = ListBox1.List(Me.ListBox1.ListIndex, 6)
TextBox6.Value = ListBox1.List(Me.ListBox1.ListIndex, 7)
TextBox7.Value = ListBox1.List(Me.ListBox1.ListIndex, 8)
TextBox8.Value = ListBox1.List(Me.ListBox1.ListIndex, 9)
TextBox9.Value = ListBox1.List(Me.ListBox1.ListIndex, 10)
TextBox10.Value = ListBox1.List(Me.ListBox1.ListIndex, 12)
TextBox11.Value = ListBox1.List(Me.ListBox1.ListIndex, 11)
ComboBox4.Value = ListBox1.List(Me.ListBox1.ListIndex, 13)

Jetzt möchte ich die Daten ändern.....
und dann wieder in die gleiche Zeile abspeichen.

15 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hi,

wir sehen leider nicht wie Du die ListBox fülst. Ein nachbau sieht meist anders aus als das Original.

Gruß Hajo
0 Punkte
Beantwortet von hwr Einsteiger_in (41 Punkte)
Hallo Hajo,

ich fülle die Listenbox mit folgendem code:

ListBox1.RowSource = Sheets("Jan").Range("A13:N120").Address

Gruß
HWR
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo HWR

schreibe doch in einer 2. Spalte der ListBox (man kann in einer ListBox in mehrere Spalten schreiben) beim Einlesen der Daten die Zeilennnummer mit rein. Diese liest Du dann bei Deinem Doppelklick-Ereignis mit aus und schreibst die Zeilennummer in eine Variable, die Du dann beim Zurückschreiben der geänderten Daten heranziehen kannst.
Wie man in weitere Spalten einer ListBox schreibt, kannst Du auf meiner HP in der Rubrik Beispieldateien und dort dann in dem Beispiel 110 nachlesen. Dort stelle ich dazu eine Beispieldatei zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von hwr Einsteiger_in (41 Punkte)
Hallo Oliver,
Danke für deine Antwort.

Ich habe mir deine HP angeschaut, aber ich bekomme das irgend wie nicht hin, ich habe keine Ahnung wie ich Zeilenindex erstellen kann.
Mit meinem Code schaffe ich zumindest das, die Listenbox gefüllt wird, und durch Doppelclick die Daten wieder im UserForm erscheinen.
Wie kann ich bei meinem Code die Zeilen so einlesen, das ich die geändert wieder zurück speichen kann.

Gruß HWR
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo HWR,

sorry, aber Du müsstest Deine Datei schon mal uns bereitstellen. Oder glaubst Du jetzt, dass wir uns Deine Exceldatei und die UserForm nachbauen? Lade Deine Datei z.B. http://www.file-upload.net/ hoch und poste uns den Link, den Du erhältst.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von hwr Einsteiger_in (41 Punkte)
Hallo Oliver,

Danke für deine Antwort, ich wollte nicht das Du die nachbauen sollst, ich dachte vielleicht hast Du noch einen Tip für mich.

Die Datei habe ich Hochgeladen anbei den Link.

http://www.file-upload.net/download-2932264/Erfolge-BLV-Mustermann.xls.html

Vielen Dank das Du dir das anschaust.

Gruß HWR
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo HWR,

benötigst Du wirklich alle Daten aus den Spalten A bis N, oder können das auch weniger sein? Das Problem, wenn ich die Spalten über eine Schleife beschreibe, so dass auch die Zeilennummer in einer Spalte stehen kann, so kann man nur 10 Spalten beschreiben. Bei Deiner Methode geht das mit mehr Spalten, aber dann bekommt man die Zeilennummer nicht mit in die ListBox.
Wenn Du nicht alle Daten benötigst, welche 9 Spalten sollen dann in der ListBox aufgeführt werden?

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von hwr Einsteiger_in (41 Punkte)
Hallo Oliver Guten Morgen,

Ja - ich brauche alle Spalten, es geht hier bei um Umsatzzahlen von Mitarbeiter.

Gruß HWR
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo HWR,

dass Du alle Spalten benötigst ist mir klar, das ist auch nicht das Problem. Benötigst Du aber alle Spalten auch in der ListBox sichtbar? Dort reichen doch auch nur bestimmte Spalten aus? Alles weitere wird doch dann in den einzelnen Feldern nach dem Doppelklick in die ListBox angezeigt?

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von hwr Einsteiger_in (41 Punkte)
Hi Oliver,

in der Listbox brauche ich nicht alle , mir reicht es bis zun beteiligten ADP und dessen Namen, das müssten 9 spalten sein,
wäre das o.k.

Danke
Gruß HWR
...