Thema Datum  Von Nutzer Rating
Antwort
Rot Array Einträge dynamisch gestalten
29.04.2009 10:18:31 Daniel
NotSolved
29.04.2009 11:13:10 Daniel
NotSolved
08.05.2009 18:11:46 Holger
NotSolved

Ansicht des Beitrags:
Von:
Daniel
Datum:
29.04.2009 10:18:31
Views:
1714
Rating: Antwort:
  Ja
Thema:
Array Einträge dynamisch gestalten
Hallo Leute,

mein Problem ist folgendes.

Ich habe eine recht lange Liste an Projekten, an denen gearbeitet wird. Dazu habe ich ein Script geschrieben, mit dem man neue Einträge/Projekte hinzufügen kann. Das funktioniert auch sehr gut.

Das Problem, das ich habe, bezieht sich dann auf die Änderung von einzelnen Zellen dieser Liste. DAzu muss ich die Projekte einlesen und in einem Dropdownmenü zur Auswahl stellen. Derzeit habe ich das mit folgendem Code gelöst.


Sheets("Projektübersicht").Range("A2").Select

liste = Array(ActiveCell.Offset(1, 2) & leer + ActiveCell.Offset(1, 0), ActiveCell.Offset(2, 2) & leer + ActiveCell.Offset(2, 0), ActiveCell.Offset(3, 2) & leer + ActiveCell.Offset(3, 0), ....)


Das Ergebnis ist dann immer ein String, der in etwa so ausschaut: "Projektart Projektort", "Projektart2 Projektort2".

______________________________________________________________________________________
Und diese Einträge des Arrays kann ich dann wieder ins Dropdownmenü einlesen mit folgendem Code.

With Userform_projekt_arch.Dropdownmenue
If liste(0) = " " Then
GoTo L1
Else
.AddItem (liste(0))
End If

If liste(0) = " " Then
GoTo L1
Else
.AddItem (liste(0))
End If

...

Damit wird überprüft, ob der String Daten enthält, wenn ja, wird er in das Menü aufgenommen, wenn nicht, wird die "With Funktion" beendet.

Damit wird das Dropdownmenü immer auf die Projekte angepasst, die eingetragen sind. Von dem her ist es eh schon relativ variabel gehalten. Es ist auch nicht das Problem, dass es nicht funktioniert. Funktioniert sogar einwandfrei das Programm.


Das eigentliche Problem ist, dass ich bei dem Array jeden Eintrag einzeln reinschreiben muss und auch den Eintrag ins Dropdownmenü für jeden einzelnen Eintrag definieren muss. Das gibt erstens ne Unmenge an Code, und zweitens ist die Arrayfunktion auf 128 Einträge begrenzt. Ich weiß, dass es die möglichkeit gäbe mit mehreren Dimensionen zu arbeiten, aber wenn ich das noch über mehrere Dimensionen mach, dann werd ich gar net mehr fertig mit Code schreiben... :)


Gibt es da vielleicht eine Möglichkeit, mit einer schleife oder einer anderen Funktion, wie ich den Code reduzieren kann und trotzdem die variable aufnahme der Daten gewährleisten kann?

Ist vielleicht ein wenig kompliziert erklärt. Falls ich das noch näher ausführen muss, bitte kurz bescheid sagen, dann mach ich das :)

Schöne Grüße
Daniel

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Array Einträge dynamisch gestalten
29.04.2009 10:18:31 Daniel
NotSolved
29.04.2009 11:13:10 Daniel
NotSolved
08.05.2009 18:11:46 Holger
NotSolved