Collapse column

Autor Thema: Office 2010: Mit Dropdown-Menü Tabellen einfügen  (Gelesen 1822 mal)

Offline lochhocker

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
Office 2010: Mit Dropdown-Menü Tabellen einfügen
« am: März 02, 2015, 20:43:30 Nachmittag »
Ahoi,

ich bin leider keine Leuchte in Excel, geschweige denn VBA und deswegen hoffe ich, dass einer von euch mir hier hilfreiche Tipps geben kann.

Kurz zu meiner Situation:

Ich habe eine Mappe mit X Blättern.
Jetzt habe ich mir auf Blatt 1 notwendige Berechnungen hingeschrieben und Grafiken, die ich so brauche.
Ab Blatt 2 stehen in den Spalten A,B,C dann verschiedene Messergebnisse. Für jeden Versuch quasi ein neues Blatt.
Nun würde ich gerne mit Hilfe eines Dropdown-Menüs, bzw. einer Combobox auf diese Versuche 1,2....X zu greifen, so dass auf Blatt 1 dann das ausgewählte Blatt mit den dazugehörigen Messdaten in A,B,C steht.

Bisher habe ich nur durch viel rumprobieren und lesen hinbekommen, dass ich eine solche Combobox habe mit den Namen der einzelnen Blätter:

Private Sub Workplace_open()
Dim i as Integer
Combobox21.clear
For i=2 to Sheets.count
Combobox21.AddItem Sheets(i).Name
Next i
End Sub

Aber auf das, was ich eigentlich vorhabe, bin ich leider bisher nicht gekommen und hab auch ehrlich gesagt keine Idee.

Falls es irgendwie anders und einfacher geht, finde ich das natürlich auch gut.

Bei der Combobox, die ich oben beschrieben habe, habe ich zudem das Problem, dass die Auswahl nach einem Neustart von Excel immer weg ist und ich sie erst im VBA-Editor starten muss.

Vielen Dank schon mal im Voraus!

MfG
Lochi

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline kgs-ks

  • Newbie
  • *
  • Beiträge: 23
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2007
Antw:Office 2010: Mit Dropdown-Menü Tabellen einfügen
« Antwort #1 am: März 02, 2015, 22:06:11 Nachmittag »
hallo

ich habe da mal als "übung" etwas nachgedacht...

1. ich kenne nur workbook_open
2. es handelt sich wohl um eine active X Combo
3.  im Private Sub NNNN_Change() Event könnte der gewählte Wert abgefragt werden (list.index....)
4. ggf der (letzte) Wert in einer Zelle gespeichert werden
5. im workbook_open   auch den letzten ausgewählten wert setzen (... selected  = true ... so ungfähr...
6. in dem ersten Blatt dann die entsprechenden Zellen als Formeln mit  Verweisen unter Verwendung des gewählten Namens konstruieren , etwa  ... =INDIREKT(A1&"!A" & ZEILE(A3)) .....  wenn in A! der gewählte Tabellenname steht
.... die weiteren  Spalten analog ( berechnet....damit sie durch autoausfüllen erzeugt werden können.)


Vielleicht hilft es

kgs

Offline lochhocker

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
Antw:Office 2010: Mit Dropdown-Menü Tabellen einfügen
« Antwort #2 am: März 03, 2015, 10:58:22 Vormittag »
Hallo, erstmal danke für deine Tipps.

Ich habe es jetzt wie folgt gemacht:
Private Sub Worksheet_Activate()
ComboBox21.ListIndex = 0
End Sub

Private Sub ComboBox21_Change()
If ComboBox21.ListIndex > 0 Then Worksheets("Tabelle1").Range("A6:C46").Value = Worksheets(ComboBox21.Value).Range("A1:C41").Value
End Sub

Was auch soweit gut funktioniert. Ist vielleicht nicht die eleganteste Lösung.

Edit: Jetzt komme ich aber schon zum nächsten Problem:

1. Ich habe jetzt eine zweite Combobox, die mit der ersten unmittelbar zusammen hängen soll.
Diese läuft über
 Private Sub Combobox22_change()
   Dim arrDaten
   Dim lngLetzte As Long
   With Worksheets("Liste")
      lngLetzte = .Cells(Rows.Count, 1).End(xlUp).Row
      arrDaten = .Range(.Cells(1, 2), .Cells(lngLetzte, 10))
      ComboBox22.List = arrDaten
   End With

Diese Liste beinhaltet dann passende Elemente für die erste Combobox.
Sprich: Ich wähle in der ersten Combobox ein Element aus und er soll mir in Box2 das dazugehörige Element ausgeben.
In dieser Liste stehen die dazugehörigen Elemente in einer Reihe in verschiedenen Spalten.
Wie verbinde ich nun also diese Elemente?

2. Ich würde gerne die Funktion einbauen, dass ich, wenn ich in dieser Liste ein neues Element eintrage, dass dann automatisch ein neues Blatt erschaffen wird mit dem dazugehörigen Namen aus Spalte B, als Beispiel.
Da weiß ich leider auch nicht weiter.

Vielen Dank im Vorraus

Edit2: Problem mehr oder weniger gelöst.
Relativ einfach mit ComboBox22.ListIndex = ComboBox21.ListIndex - 1. Das ganze noch mal umdrehen klappt leider nicht, ist aber auch nicht unbedingt notwenig.


« Letzte Änderung: März 03, 2015, 16:42:15 Nachmittag von lochhocker »

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.