Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1892to1896
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

Klassenobjekte speichern

Klassenobjekte speichern
26.07.2022 14:52:07
Marius
Hallo zusammen,
ich bräuchte mal wieder eine Hilfe. Ich habe ein Projekt in dem ich mehrere Objekte einer eigenen Klasse, nacheinander erstellt. Diese möchte ich dann gesammelt an eine Sub übergeben um weiter damit zu arbeiten.
Ich habe es mit einem Array versucht, wobei ich hier das Problem habe, dass ich vorher nicht weiß, wieviele Objekte hinein kommen.
Um das Problem zu umgehen, habe ich es mit einer Collection versucht. So wie ich das verstanden habe, wird in der Collection aber nur ein Verweis auf mein Objekt gespeichert. Darum habe ich nach z.B. 3 erstellten Objekten 3 Objekte in der Collection, die aber alle die selben Daten enthalten wie das zuletzt eingegebene.
Wie kann ich also mein Ziel erreichen?

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

Betreff
Datum
Anwender
Anzeige
AW: Klassenobjekte speichern
26.07.2022 15:20:54
Nepumuk
Hallo Marius,
ich benutze, speziell bei Controls in einem UsertForm, immer ein Collection-Objekt zum Speichern von Klasseninstanzen. Das funktioniert also einwandfrei.
Gruß
Nepumuk
AW: Klassenobjekte speichern
26.07.2022 15:38:13
Marius
Also ich habe eine Instanz einer Klasse, die jeweils neue Daten durch Eingabe erhält.
Als einfaches Beispiel: Wenn ich eine Liste mit Namen und Telefonnummern haben möchte mit Gruppenzugehörigkeit, dann gehe ich quasi her und öffne eine Maske in der ich die Gruppe definiere und dann eine Person zu dieser Gruppe. Person ist hierbei eine Objekt (eine Instanz) meiner Klasse. Mit einem Button kommt diese Person in die Collection. Dann ändere ich Name und Telefonnummer und klicke wieder den Button. Jetzt habe ich 2 Objekte in meiner Collection, aber beide haben Namen und Nummern der zuletzt eingegebenen Person.
Ich müsste doch nach dem hinzufügen zur Collection eine neue Instanz erzeugen, wie würde ich das machen wegen der Benennung? Mit gleichem Namen als New Class1 würde doch die erste auch wieder überschrieben.
Anzeige
AW: Klassenobjekte speichern
26.07.2022 15:50:16
Nepumuk
Hallo Marius,
dann hast du das Prinzip einer Klasse nicht verstanden. Entweder du benutzt für jeden Wert eine eigene Instanz. Oder du benutzt eine Auflistungsklasse. Da hast du was zu lesen darüber: http://www.office-loesung.de/ftopic544234_0_0_asc.php
Gruß
Nepumuk
AW: Klassenobjekte speichern
26.07.2022 16:00:24
Marius
Hallo Nepomuk,
danke für den Link, den lese ich mir auf jeden fall mal durch! Habe es aber hinbekommen. Wenn ich nach dem hinzufügen zur Collection "Set meineKlasse = new Class1" ausführe, wird alles richtig gespeichert (so auf den ersten Blick). Ich dachte, damit wird die zuerst erzeugte Instanz auch wieder "zurückgesetzt".
Danke für den Denkanstoss!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige