Office: Abfrage von Daten über Arbeitsblätter per Dropdownboxen

Helfe beim Thema Abfrage von Daten über Arbeitsblätter per Dropdownboxen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusamenn. Ich brauche euren Rat, ich komme nicht mehr weiter. Und zwar geht es um die Abfrage von Daten über drei Arbeitsblätter (als... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von MasterBandit, 5. November 2013.

  1. Abfrage von Daten über Arbeitsblätter per Dropdownboxen


    Hallo zusamenn.

    Ich brauche euren Rat, ich komme nicht mehr weiter.

    Und zwar geht es um die Abfrage von Daten über drei Arbeitsblätter (als Beispiel ).
    In Blatt 2 stehen Namen für Combobox 1 auf Blatt 1, die stätig wächst. In Blatt 3 stehen
    Werte, in der Sortierung nach Monat. Die Monate sind auch ein weiteres Filterkriterium in Combobox 2.

    Also: Blatt 2 || A1 Peter ||| Blatt 3 || A1 | Januar || B1 | Februar || C1 | März
    ---------------|| A2 Lisa.. ||| (Lisa) || A2 | Wert J1 || B2 | Wert F1 || C2 | Wert M1
    ---------------|| A3 Bernd ||| ------|| A3 | Wert J2 || B3 | Wert F2 || C3 | Wert M2

    Blatt 3 und folgende sind bezeichnet nach den Namen aus Blatt 2.

    In Blatt 1 soll nun per Combobox 1 erstmal der Name ausgewählt werden (aus der Liste Blatt 2), und dann in Abhängigkeit
    zur Auswahl des Namens mit Combobox 2 der Monat bestimmt werden.

    Es soll also per Combobox 1 auf das Arbeitsblatt des Namen gesprungen werden, und da dann per Auswahl von Combobox 2
    der Monat bestimmt werden, dessem Werte dann auf Arbeitsblatt 1 ausgegeben werden sollen.

    Die Abhängigkeit der Comboboxen per INDEX und VERGLEICH hab ich mir schon angeschaut, und auch die Ausgabe per
    SVERWEIS schon mal probiert, und auch einigermaßen hinbekommen. Mein großes Problem ist jetzt, dass das alles nur einzeln auf
    einem Blatt funktioniert hat, ich es aber zwingend über mehrere Blätter benötige. Das hier in die INDEX und VERGLEICH - Funktion einzubauen,
    kriege ich nicht hin, hab da irgendwie ein Brett vorm Kopf. Und auch der SVERWEIS macht mir Sorgen, da ich die Werte
    nur von links nach rechts abgefragt bekomme, aber nicht von oben nach unten. Und das müsste auch gehen.

    Ich hoffe, ihr könnt mir helfen, ich verzweifle...
    Es handelt sich übrigens um Excel 2013.



    Gruß

    Malte
     
    Zuletzt bearbeitet: 5. November 2013
    MasterBandit, 5. November 2013
    #1
  2. Beverly
    Beverly Erfahrener User
    Hi Malte,

    vielleicht solltest du mal deine Arbeitsmappe mit dem derzeitigen Stand hochladen.

    Bis später,
    Karin
     
    Beverly, 5. November 2013
    #2
  3. Hallo Karin.

    Ich habe oben in meinem Post meinen bisherigen Stand ergänzt.
    Hoffe, du kannst mir helfen. Mir kommt es so vor, als wenn das nur noch eine Kleinigkeit ist,
    bekomme es aber nicht hin.

    Gruß

    Malte
     
    MasterBandit, 5. November 2013
    #3
  4. Beverly
    Beverly Erfahrener User

    Abfrage von Daten über Arbeitsblätter per Dropdownboxen

    Hi Malte,

    ich nehme an, du meinst das so:


    Tabelle1[TABLE="width: 1"]
    <tbody>[TR="bgcolor: #99CCFF"]
    [TD][/TD]
    [TD]A[/TD]
    [TD]B[/TD]
    [/TR]
    [TR]
    [TD="bgcolor: #99CCFF, align: center"]12[/TD]
    [TD="bgcolor: #BFBFBF, align: left"]Wert 1[/TD]
    [TD="bgcolor: #C6E0B4, align: left"]c1[/TD]
    [/TR]
    [TR]
    [TD="bgcolor: #99CCFF, align: center"]13[/TD]
    [TD="bgcolor: #BFBFBF, align: left"]Wert 2[/TD]
    [TD="bgcolor: #C6E0B4, align: left"]c2[/TD]
    [/TR]
    [TR]
    [TD="bgcolor: #99CCFF, align: center"]14[/TD]
    [TD="bgcolor: #BFBFBF, align: left"]Wert 3[/TD]
    [TD="bgcolor: #C6E0B4, align: left"]c3[/TD]
    [/TR]
    [TR]
    [TD="bgcolor: #99CCFF, align: center"]15[/TD]
    [TD="bgcolor: #BFBFBF, align: left"]Wert 4[/TD]
    [TD="bgcolor: #C6E0B4, align: left"]c4[/TD]
    [/TR]
    </tbody>[/TABLE]

    [TABLE="width: 1"]
    <tbody>[TR="bgcolor: #FFCC66"]
    [TD="colspan: 3"] verwendete Formeln[/TD]
    [TD][/TD]
    [/TR]
    [TR="bgcolor: #FFCC66"]
    [TD] Zelle[/TD]
    [TD] Formel[/TD]
    [TD] Bereich[/TD]
    [TD]R1C1 für Add In[/TD]
    [/TR]
    [TR]
    [TD]B12:B15[/TD]
    [TD]=SVERWEIS($B$4;INDIREKT($B$2&"!C10:G13") ;ZEILE(A2) ;0)[/TD]
    [TD][/TD]
    [TD] =VLOOKUP(R4C2,INDIRECT(R2C2&"!C10:G13") ,ROW(R[-10]C[-1]) ,0)[/TD]
    [/TR]
    </tbody>[/TABLE]

    Excel-Inn.de
    Hajo-Excel.de
    XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
    Add-In-Version 12.10 einschl 64 Bit


    Bis später,
    Karin
     
    Zuletzt bearbeitet: 5. November 2013
    Beverly, 5. November 2013
    #4
  5. Hallo Karin.

    Das ist super, hat geklappt, danke! Da war ich schon knapp dran bei meinen Versuchen.

    Aber ich verstehe jetzt die Geschichte mit VLOOKUP nicht, wo muss das hin, was bewirkt das?
    Und dann bleibt noch die Frage mit der Wertetabelle. Welche Funktion wäre in B12:B15 nötig,
    um die Werte aus der Wertetabelle LISA!$A$1:$A$5 zu lesen?

    Gruß

    Malte
     
    MasterBandit, 5. November 2013
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi Malte,

    die Spalte, in der die R1C1-Formel steht, ist nur dazu da, damit man einen Tabellenausschnitt, der mit diesem Add-In erstellt wurde, auch wieder in eine funktionierende Excel-Tabelle zurückwandeln kann - du musst also damit nichts weiter machen.

    In B12: =INDEX(INDIREKT($B$2&"!A2: D5");ZEILE(A1);VERGLEICH($B$4;INDIREKT($B$2&"!A1: D1");0);1)

    Bis später,
    Karin
     
    Beverly, 5. November 2013
    #6
  7. Nochmal super, danke Karin.

    Eine Sache habe ich jetzt noch, die ist aber in meinen Augen aber auch das Schwierigste.
    Und zwar möchte ich neben den Ausgabefeldern in Blatt 1 ein Feld haben, in das ich Werte
    eintragen kann. Das habe ich schon erledigt, jetzt das Schwierige. Die dort eingetragenen
    Werte sollen per Knopfdruck in die ausgewählte Wertetabelle, also Blatt Lisa, Bernd,...
    eingetragen werden. Ich habe noch eine Datei oben wieder eingefügt, wie ich mir das
    ungefähr vorstelle.

    Kannst du mir da auch nochmal helfen, das wäre der Hammer!!!

    Gruß Malte
     
    MasterBandit, 5. November 2013
    #7
  8. Beverly
    Beverly Erfahrener User

    Abfrage von Daten über Arbeitsblätter per Dropdownboxen

    Hi Malte,

    das lässt sich nur mit VBA realisieren. Ich würde dir der Einfachheit halber empfehlen, das mit einem Doppelklick auf die betreffende Zelle im Bereich D12: D15 anstelle mit einem Schalter. Das geht mit folgendem Code im Codemodul der Tabelle1:

    Code:
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
       Dim wksTab As Worksheet
       Dim rngZelle As Range
       If Not Intersect(Target, Range("D12:D15")) Is Nothing Then
          Cancel = True
          Set wksTab = Worksheets(Range("B2").Value)
          With wksTab
             Set rngZelle = wksTab.Rows(1).Find(Range("B4").Value, lookat:=xlWhole)
             If Not rngZelle Is Nothing Then wksTab.Cells(Target.Row - 10, rngZelle.Column) = Target
             Set rngZelle = Nothing
          End With
       End If
    End Sub
    Bis später,
    Karin
     
    Beverly, 5. November 2013
    #8
  9. Hallo Karin,

    ich hab es gerade mal ausprobiert, und obwohl ich nicht genau wusste, wo ich es hinpacken musste,
    hat es trotzdem auf Anhieb funktioniert, ist der Wahnsinn, großen Dank.

    Eine Sache ist mir jetzt noch aufgefallen. Ist es möglich, die Eingabefelder, sprich D12:D15 nach der
    Eingabe oder spätestens nach Wechsel der Auswahl durch die Comboboxen automatisch zu leeren?

    Gruß

    Malte
     
    MasterBandit, 6. November 2013
    #9
  10. Beverly
    Beverly Erfahrener User
    Hi Malte,

    um die Zelle(n) direkt nach dem Doppelklick zu leeren, muss der Code wie folgt geändert werden:

    Code:
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
       Dim wksTab As Worksheet
       Dim rngZelle As Range
       If Not Intersect(Target, Range("D12:D15")) Is Nothing Then
          Cancel = True
          Set wksTab = Worksheets(Range("B2").Value)
          With wksTab
             Set rngZelle = wksTab.Rows(1).Find(Range("B4").Value, lookat:=xlWhole)
    [COLOR=#ff0000]         If Not rngZelle Is Nothing Then
                wksTab.Cells(Target.Row - 10, rngZelle.Column) = Target
                Target.ClearContents
             End If[/COLOR]
             Set rngZelle = Nothing
          End With
       End If
    End Sub
    Bis später,
    Karin
     
  11. Wahnsinn bist du schnell.

    Mir ist nämlich gerade noch ein Problem aufgefallen, was ich noch editieren wollte.

    Jetzt ist mir nämlich in den Kopf gekommen, dass viele Daten verarbeitet werden sollen
    (die vier Zellen stehen nur exemplarisch). Da könnte es umständlich sein, bei jedem Feld die
    Finger von der Tastatur zu nehmen, um einen Doppelklick zu machen. Ist das auch möglich
    durch die Betätigung der Enter- oder Tab-Taste? So dass man während der Eingabe und des
    Zellensprungs das quasi direkt speichert? Alternativ sonst vielleicht doch die Lösung mit dem
    Speichern-Knopf?

    Jetzt schon mal ein riesen Dankeschön dafür, dass du mir so überragend zur Seite stehst!!!

    Gruß

    Malte
     
    MasterBandit, 6. November 2013
    #11
  12. Beverly
    Beverly Erfahrener User
    Hi Malte,

    die Übertragung mit Enter in der Zelle zu starten ist kein Problem, nur hat sie den Nachteil, dass auch Fehleingaben übernommen werden, falls diese nicht mit Esc abgebrochen werden. Da ist ein Schalter schon besser.
    Kopiere den folgenden Code in ein allgemeines Modul:

    Code:
    Sub Uebertragen()
       Dim wksTab As Worksheet
       Dim rngZelle As Range
       Dim lngZeile As Long
       Set wksTab = Worksheets(Range("B2").Value)
       With wksTab
          Set rngZelle = wksTab.Rows(1).Find(Range("B4").Value, lookat:=xlWhole)
          If Not rngZelle Is Nothing Then
             For lngZeile = 12 To IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows.Count)
                wksTab.Cells(lngZeile - 10, rngZelle.Column) = Cells(lngZeile, 4)
                Cells(lngZeile, 4).ClearContents
             Next lngZeile
          End If
          Set rngZelle = Nothing
       End With
    End Sub
    Erstelle außerdem einen Schalter aus den Formular-Steuerelementen und verknüpfe dieses Makro mit dem Schalter.

    Bis später,
    Karin
     
  13. Abfrage von Daten über Arbeitsblätter per Dropdownboxen

    Eingebaut und zack, funktioniert. Unglaublich gut.

    Und ich hab ein letzten, vielleicht noch ein klein bißchen komplizierten Punkt, und dann sind wir, glaub ich, fertig.

    Ist es möglich, die Zellen, in denen nichts eingetragen ist, zu überspringen? Also das dann nicht eine 0
    geschrieben wird, sondern die Zelle dann einfach übergangen wird, sprich nicht geschrieben wird?

    Gruß

    Malte
     
    MasterBandit, 6. November 2013
    #13
  14. Beverly
    Beverly Erfahrener User
    ja, das ist möglich - damit ist deine Frage eigentlich beantwortet...:D:p

    Ändere diesen Teil:

    Code:
             For lngZeile = 12 To IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows.Count)
    [COLOR=#ff0000]            If Cells(lngZeile, 4) <> "" Then[/COLOR]
                   wksTab.Cells(lngZeile - 10, rngZelle.Column) = Cells(lngZeile, 4)
                   Cells(lngZeile, 4).ClearContents
    [COLOR=#ff0000]            End If[/COLOR]
             Next lngZeile
    
    Bis päter,
    Karin
     
  15. Das ist der Kracher, alles geht.

    Karin, ich danke dir vielmals für deine schnelle und perfekte Hilfe.

    Ich werde das ganze jetzt mal entwickeln in eine große Tabelle, ich hoffe, da läuft dann alles glatt.
    Aber falls noch was anfällt weiß ich ja, dass mir hier kompetent und vor allem sehr freundlich geholfen wird.

    Nochmals vielen Dank!

    Gruß

    Malte
     
    MasterBandit, 6. November 2013
    #15
Thema:

Abfrage von Daten über Arbeitsblätter per Dropdownboxen

Die Seite wird geladen...
  1. Abfrage von Daten über Arbeitsblätter per Dropdownboxen - Similar Threads - Abfrage Daten Arbeitsblätter

  2. Datensatz abfragen und Daten ergänzen

    in Microsoft Access Hilfe
    Datensatz abfragen und Daten ergänzen: Hallo, ich habe leider keine Ahnung mehr von Access. Habe es zwar vor 10 Jahren gelernt, doch leider ist mein wissen weg. Ich habe folgendes Problem : Ich würde gerne eine Auftragsverwaltung...
  3. Daten zurückschreiben über Verknüpfte Abfrage

    in Microsoft Access Hilfe
    Daten zurückschreiben über Verknüpfte Abfrage: Hallo zusammen, habe folgende Problem: Hatte eine DB mit einer Tabelle. Dazu ein Formular und eine Abfrage. Über die Abfrage habe ich die Tabelle über Datensatzquelle mit meinem Formular...
  4. Sortierung von Daten via Abfrage?

    in Microsoft Access Hilfe
    Sortierung von Daten via Abfrage?: Hallo zusammen! Ich bin Access-Neuling und habe ein Problem mit der Sortierung von Daten bzw. bin mir nicht sicher, ob ich das von mir gewünschte Ergebnis überhaupt via Abfrage erreichen...
  5. Kopierte Daten aus eine Abfrage können nicht mittels Makro eingefügt werden.

    in Microsoft Access Hilfe
    Kopierte Daten aus eine Abfrage können nicht mittels Makro eingefügt werden.: Anwendung: Access officce 365 Die Datenbank ist aufgeteilt in Front- und Backend. Hallo Forumsmitglieder In der Front End Datenbank muss ich mit einem Makro die markierten Datensätze aus einer...
  6. Bearbeiten der Daten einer Abfrage

    in Microsoft Access Tutorials
    Bearbeiten der Daten einer Abfrage: Bearbeiten der Daten einer Abfrage Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Mehr... Weniger...
  7. Zählen von Daten mithilfe einer Abfrage

    in Microsoft Access Tutorials
    Zählen von Daten mithilfe einer Abfrage: Zählen von Daten mithilfe einer Abfrage Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Mehr......
  8. Abfrage von historischen Daten aus SharePoint-Liste mit Power Query

    in Microsoft Excel Hilfe
    Abfrage von historischen Daten aus SharePoint-Liste mit Power Query: Guten Tag, um den Status verschiedener Projekte zu verfolgen nutzen wir eine SharePoint-Liste. Um verschiedene statistische Auswertungen durchführen rufe ich die Liste in Excel mittels...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden