Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1952to1956
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Listview erweitern

Listview erweitern
15.11.2023 08:12:42
Thomas
Hallo Excelfreunde,

ich möchte gern meine Listbox mit einem Listview austauschen. Bei der Recherche bin ich auf ein ListView von Uwe https://www.herber.de/forum/archiv/1880to1884/1882043_ListView_Suche.html
gestoßen.

Das Beispiel finde ich richtig gut. Leider fehlt in diesem Beispiel das Macro " EintragAendern".

Ich finde einfach nicht heraus wie das gehen könnte. Irgendwie muss das mit dem Key zu tun haben.

Kann mir dabei jemand helfen?

https://www.herber.de/bbs/user/164280.xlsm

Habt schon mal rechtvielen Dank für euer Interesse.


mfg thomas

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listview erweitern
15.11.2023 08:30:27
Alwin Weisangler
Hallo Thomas,

Änderungen speichern geht recht einfach.
in der 1. Spalte, welche mit .ListItems.Add erzeugt wird stehen die Zeilennummern des .Listobjects mit vorgesetzten Nullen, da die Listview Zelleninhalte Text sind. Damit wird ein sinnvolles Sortieren in dieser Spalte möglich.
Diese Zeilennummern kannst du zum zurückschreiben der Textboxeninhalte in diese Zeile verwenden.
Solltest du mit dieser Info nicht zurechtkommen, melde dich mit deinem inzwischen dazu erarbeiteten Stand.

Gruß Uwe
AW: Listview erweitern
15.11.2023 12:16:26
Thomas
Hallo Uwe,

hab erstmal rechtvielen dank das du dir dies mal angeschaut hast.

Aber so richtig komme ich nicht klar.

Mein derzeit ( aus meiner Sicht) bester versuch ist dieser.

Dim zelle As Long
Dim intAnt As Integer
Dim i As Long
Dim lngZe
Dim y As ListObject, x As Worksheet


Set y = DynTab
Set x = tbl_Protokoll

zelle = ListView1.SelectedItem + 1

For i = 2 To 14 'Schleife von 1 bis 14
x.Cells(zelle, i - 1) = Me("TextBox" & i)
Me("TextBox" & i).Value = ""
Next

Aber damit gibt es nur Probleme. Entweder es verschwindet einfach die geänderte Spalte aus dem Listview, Ich lande in der Falschen Zeile oder es klappt nur einmal.

Wenn ich es dann beim zweiten mal starte wird die formatierte Tabelle nicht mehr erkannt.

Kannst du nochmal schauen?

https://www.herber.de/bbs/user/164304.xlsm

mfg Thomas


Anzeige
AW: Listview erweitern
15.11.2023 14:21:09
Alwin Weisangler
Hallo Thomas,

mache es so:


Private Sub aendern_Click()
Dim iZeile&: iZeile = TextBox1
Dim i&
With DynTab.DataBodyRange
For i = 1 To .Columns.Count
.Cells(iZeile, i) = Controls("TextBox" & i + 1)
Next i
End With
neuLaden
End Sub

Da wird auch gleich die LW aktualisiert.
Ein kleiner Hinweis meinerseits. Wenn du Objekte in einer Schleife abfragst, dann Objects("TextBox" & n) =...
Mit ME("..." & n) funktioniert es zwar auch aber lieber ordentlich lesbar schreiben.

Gruß Uwe
Anzeige
AW: Listview erweitern
15.11.2023 14:29:07
Alwin Weisangler
noch eine kleine Sache. Falls numerische Werte wichtig sind, braucht es auch die entsprechende Formatierung. Dies kann man in der Schleife entsprechend der Spaltennummer der Zählvariable i mitgeben.
Beispielhaft i=4 Then Cdbl(Controls("TextBox" & i + 1)) etc.

Gruß Uwe

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige