Clever-Excel-Forum

Normale Version: Mehrere Zeilen aus Tabelle ziehen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen
Ich hab ein kleines Excel Problem:

Ich habe eine kleine Tabelle, in welcher in Spalte A jeweils das Geburtsdatum steht und in Spalte B der Name.
Nun soll in einem anderen Tabellenblatt stehen:

Heute hat Geburtstag:
Xxx
Xxx
Xxx

Morgen hat Geburtstag:
Xxx
Xxx
Xxx

Wie schaffe ich es, dass dies funktioniert?
Hallo,

versuche es mit dem Autofilter.
Geht nicht weil es auf einem anderen Datenblatt angezeigt werden soll...
Hallo,

es wäre sicher sinnvoller, wenn das über eine MsgBox, beim Öffnen der Datei angezeigt würde.
Hi,

so?
Arbeitsblatt mit dem Namen 'Tabelle2'
BC
3Heute hat Geburtstag:Michel
4Morgen hat Geburtstag:Tom

ZelleFormel
C3=SVERWEIS(HEUTE();Tabelle1!$A$2:$B$4;2;0)
C4=SVERWEIS(HEUTE()+1;Tabelle1!$A$2:$B$4;2;0)
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.01] MS Excel 2013
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Here is the VBA Module code that you can run and achieve the same thing 

Code:
Option Explicit
Sub geburtstag()

Dim enderow As Long, i As Long, zeile As Long, myDate As Date, strName As String, tag As Date, morgen As Date, zeile2 As Long
zeile = 1
zeile2 = 1
enderow = Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row
morgen = Day(Date + 1)
For i = 2 To enderow
    tag = Day(Sheets(1).Cells(i, 1).value)
    If tag = Day(Date) Then
        If Month(Sheets(1).Cells(i, 1).value) = Month(Date) Then
            zeile = zeile + 1
            Sheets(2).Cells(1, 1).value = "Geburtsdatum"
            Sheets(2).Cells(1, 2).value = "Name"
            myDate = Sheets(1).Cells(i, 1).value
            strName = Sheets(1).Cells(i, 2).value
            Sheets(2).Cells(zeile, 1).value = myDate
            Sheets(2).Cells(zeile, 2).value = strName
        End If
    End If
    If tag = morgen Then
        If Month(Sheets(1).Cells(i, 1).value) = Month(Date) Then
            zeile2 = zeile2 + 1
            Sheets(2).Cells(1, 3).value = "Geburtsdatum"
            Sheets(2).Cells(1, 4).value = "Name"
            myDate = Sheets(1).Cells(i, 1).value
            strName = Sheets(1).Cells(i, 2).value
            Sheets(2).Cells(zeile2, 3).value = myDate
            Sheets(2).Cells(zeile2, 4).value = strName
        End If
    End If
Next
End Sub

[attachment=14861]
Hi Ralf,

wenn mehrere Personen am selben Tag Geburtstag haben, geht es mit einem Verweis aber nicht mehr. Daher mein Vorschlag:

Arbeitsblatt mit dem Namen 'Tabelle4'
ABDEFGHI
1NameGeburtstagAlterHS1HS2Heute haben Geburtstag:Morgen haben Geburtstag:
2Hans Meier06.12.196453 Jahre2Hans MeierLotte Geier
3Christine Huber29.06.198235 JahreGerd Schultze
4Sonja Möller13.07.197047 Jahre
5Herbert Schmitt13.07.196156 Jahre
6Monika Müller04.08.197542 Jahre
7Gerd Schultze06.12.195958 Jahre7
8Lotte Geier07.12.196353 Jahre8

ZelleFormel
D2=WENN(DATUM(JAHR(HEUTE());MONAT(B2); TAG(B2))<=HEUTE(); JAHR(HEUTE())-JAHR(B2);JAHR(HEUTE())-JAHR(B2)-1)
E2=WENN(DATUM(;MONAT(B2);TAG(B2))=DATUM(;MONAT(HEUTE());TAG(HEUTE()));ZEILE();"")
F2=WENN(DATUM(;MONAT(B2);TAG(B2))=DATUM(;MONAT(HEUTE());TAG(HEUTE()+1));ZEILE();"")
H2=WENNFEHLER(INDEX($A$1:$A$8;KKLEINSTE($E$1:$E$8;ZEILE(A1)));"")
I2=WENNFEHLER(INDEX($A$1:$A$8;KKLEINSTE($F1:$F$8;ZEILE(A1)));"")
Verwendete Systemkomponenten: [Windows (32-bit) NT :.00] MS Excel 2013
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Die beiden farbig markierten Hilfsspalten einfach ausblenden, dann stören sie nicht mehr.