Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
704to708
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
704to708
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Wer hat in bestimmtem Zeitraum Geburtstag

Wer hat in bestimmtem Zeitraum Geburtstag
11.12.2005 17:38:03
Florian.Reinartz
Hallo, es ist mal wieder so weit, ich bin mit meinem Latein am ende ;-)
vielleicht kann mir einer von Euch helfen...
Ich habe eine Liste mit Namen (A), Geburtstag (E) und Alter (F). Das Alter wird automatisch ermittelt.
In einer Zelle gibt man das Anfangsdatum (M5) und das Enddatum (M7) des Zeitraumes an. Außerdem gibt man noch ein Mindestalter an.
Jetzt möchte ich mit Hilfe von VB eine Funktion entwickeln, die schaut, ob ein Datum aus Spalte E in angegebenen Zeitraum liegt, wenn ja, soll kontrolliert werden ob es das Alterskriterium erfüllt. Ist das der Fall sollen der Name in L12 und das Alter in N12 eingetragen werden.
Die Ausgabetabelle beginnt in Zeile 12 (nach unten offen) und befindet sich im selben Sheet wie die Basistabelle!
Mein proble, ist, dass dadurch das ein Geburtsdatum natürlich ein anders Jahr ist als das aktuelle findet er keine übereinstimmungen.
Vielen Dank
F. Reinartz

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wer hat in bestimmtem Zeitraum Geburtstag
ransi
hallo florian
lädst du mal ein kleines beispiel auf den server?
ransi
AW: Wer hat in bestimmtem Zeitraum Geburtstag
ransi
hallo florian
interesse an einer formellösung?
https://www.herber.de/bbs/user/29118.xls
spalte J kannst du ausblenden und die zellen M7 und M9 schriftfarbe auf grau setzen.
das ganze ginge auch ohne die hilfsspalte und die beiden hilfszellen, aber dann wirds unübersichtlich.
ransi
AW: Wer hat in bestimmtem Zeitraum Geburtstag
12.12.2005 00:57:47
FLorian
Klasse, hast mir sehr geholfen. Habe es aber nicht mit den Formeln in den Zellen gemacht sondern über VB, kann dann auch noch ein paar formatierungen automatisieren.
Als Basis dienen aber Deine Ideen mit Spalte J, Zelle M7 und M9. Durch VB muss ich auch die Zeile 2 nicht ausblenden...
Hier mein VB-Skript:

Private Sub Workbook_Open()
'---- Auswertungstabelle säubern -----'
Range("L12:N600").Select
Selection.ClearContents
Range("A2").Select
'------------ Zeitraum entfernen ---------------'
Range("M5").Select
Selection.ClearContents
Range("M7").Select
Selection.ClearContents
'---- überflüssige Zeilen löschen -----'
Range("K22:O600").Select
Selection.Delete Shift:=xlUp
'---- Tabelle unten grau "schließen" -----'
Range("K22:O22").Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
'------------ Cursor ins Home ---------------'
Range("A2").Select
End Sub


Private Sub Suchen_Click()
Dim i As Integer      '------- Variable i -> 1. Zeile in Ausgabetabelle --------'
Dim x As Integer      '------- Variable x -> Kontrollvariable ob durchsuchte Zeile auch Eintrag besitzt --------'
'------------ Variablen bestimmen ---------------'
i = 12      '------- Variable i -> 1. Zeile in Ausgabetabelle --------'
x = 0       '------- Variable x -> Kontrollvariable ob durchsuchte Zeile auch Eintrag besitzt --------'
'------------ Eingabenkontrolle und ggf. MsgBox ---------------'
If Range("M5") = 0 Or Range("M7") = 0 Then
MsgBox " Bitte kontrollieren Sie Ihre Eingaben für den Zeitraum des Gemeindebriefes", _
48, " Fehler! "
End If
If Range("M9") = 0 Then
MsgBox " Bitte kontrollieren Sie Ihre Eingabe des Mindesalters", _
48, " Fehler! "
End If
'------------ Auswertung beginnen ---------------'
If Range("M5") <> 0 And Range("M7") <> 0 And Range("M9") <> 0 Then
For n = 2 To 600 Step 1
If Range("A" & n) <> 0 Then     '------------ Suchfunktion in Basistabelle -> beginnt bei Zeile 2 ---------------'
x = 1
End If
If Range("M6") <= Range("J" & n) And Range("J" & n) <= Range("M8") And Range("F" & n) >= Range("M9") - 1 And x = 1 Then
ActiveWorkbook.Sheets(1).Range("L" & i) = ActiveWorkbook.Sheets(1).Range("A" & n)
ActiveWorkbook.Sheets(1).Range("N" & i) = ActiveWorkbook.Sheets(1).Range("F" & n) + 1
i = i + 1
x = 0
End If
Next n
End If
'------------ Formatierung ---------------'
Range("K12:O12").Select
Selection.Copy
Range("K13:O" & i - 1).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("K" & i & ":O" & i).Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
'------------ Sortierung ---------------'
Range("L12:N600").Select
Selection.Sort Key1:=Range("N12"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
'------------ Cursor ins Home ---------------'
Range("A2").Select
End Sub

Anzeige
AW: Wer hat in bestimmtem Zeitraum Geburtstag
11.12.2005 18:18:25
volker
hallo
um das problem des geburtsjahres zu lösen , lass es doch einfach weg
vergleiche nur monat und jahr zB:

Sub gebdat()
von_mt = DatePart("m", Cells(5, 8)) * 100 + DatePart("d", Cells(5, 8))
bis_mt = DatePart("m", Cells(7, 8)) * 100 + DatePart("d", Cells(7, 8))
For x = 2 To 5
geb_mt = DatePart("m", Cells(x, 5)) * 100 + DatePart("d", Cells(x, 5))
If von_mt <= geb_mt And bis_mt >= geb_mt Then MsgBox (Cells(x, 1))
Next x
End Sub

_mt heißt monatTag
gruß volker.
AW: Wer hat in bestimmtem Zeitraum Geburtstag
11.12.2005 19:03:24
Florian
Problem ist nur, dass dann das Alter, welches in der Basis-Tabelle automatisch berechnet wird nicht mehr angageben werden kann. Außerdem ist das Alter bestandteil der Ausgabetabelle...
Anzeige
AW: Wer hat in bestimmtem Zeitraum Geburtstag
11.12.2005 19:21:47
volker
hallo,
sorry da haben wir uns falsch verstanden .
du kannst das geburtsjahr und somit auch das alter in deiner tabelle lassen,
nur der vba cod benutzt nur monat und tag durch datepart.
mfg Volker.
AW: Wer hat in bestimmtem Zeitraum Geburtstag
12.12.2005 00:59:18
FLorian
Vielen Dank für Deine Mühe aber "ransi" hat mich schon auf den richtigen Pfad gebracht.
AW: Wer hat in bestimmtem Zeitraum Geburtstag
12.12.2005 00:59:49
FLorian
Vielen Dank für Deine Mühe aber "ransi" hat mich schon auf den richtigen Pfad gebracht.
MfG
Florian

16 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige