Anzeige
Archiv - Navigation
1592to1596
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
Inhaltsverzeichnis

Messagebox wennn Geburtstag

Messagebox wennn Geburtstag
30.11.2017 22:21:32
Michael
Hallo,
ich habe eine Arbeitsmappe mit Userform, in der ich meine Kontakte einpflege.
Im Blatt "Datenblatt" werden die Daten daziu gespeichert.
In Spalte C stehen die Vornamen in Spalte D die Nachnamen..in Spalet L die Geburtsdaten.
Ich möchte gerne, wenn ich meine Mappe öffne, das eine Messagebox aufgeht, wenn heute, in 3 Tagen und in 7 Tagen Geburtstag hat.
Wie kann ich das als Makrocode umsetzen?
Gruß
MdJ

29
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Messagebox wennn Geburtstag
01.12.2017 05:41:17
Hajo_Zi
schaue mal hier
http://excel-inn.de/dateien/vba_beispiele/geburtstag_heute_ermitteln_zellen_einfaerben.zip

Ich gebe keinen Dank für eine Rückmeldung, da ich durch solche Beiträge nicht meine Beitragszahl erhöhen muss.
Also ich schreibe keine Beiträge mit dem Betreff "Gerne u. Danke für die Rückmeldung. o.w.T."
Rückmeldung ist ja in der Heutigen Zeit nicht üblich und die wenigen die eine Rückmeldung geben,
mögen mir das verzeihen, das kein Danke für eine Rückmeldung kommt.
Beiträge von Werner, Luc, robert und folgende lese ich nicht.
Anzeige
AW: Messagebox wennn Geburtstag
01.12.2017 09:31:45
Michael
Hallo Hajo_Zi,
vielen Dank für deine Hilfe.
Das Beispiel sieht eigentlich schon sehr gut aus.
Wäre noch gut, wenn man auch in dem Code einbauen könnte, das 3, 5 und 7 Tage vor dem Datum eine Message aufgeht.
Ich bin grad in den Kinderschuhen mit VBA.....einen bestehenden Code, kann ich es so gut e geht an meine Bedürfnisse anpassen. Leider wüsste ich nicht, wie dieses in dem Code umsetzen müsste?
Gruß
Michael
AW: Messagebox wennn Geburtstag
01.12.2017 07:05:39
RPP63
Moin!
Schaue mal in diesen Thread:
http://www.clever-excel-forum.de/thread-13077.html
Dort habe ich eine Datei hochgeladen, die sowohl eine Formellösung als auch eine Makrolösung mit MsgBox enthält.
Falls man an die Datei als Gast nicht herunterladen kann, doppelt gemoppelt auch hier:
https://www.herber.de/bbs/user/118027.xlsm
Gruß Ralf
Anzeige
AW: Messagebox wennn Geburtstag
01.12.2017 11:15:35
Michael
Hallo W. Höttl,
ich wollte das gerne als Messagbox anzeigen lassen, sobald ich die Mappe aufrufe, das die MessgeBox mir
meldet, ob heute, in 3 oder 7 Tagen Geburtstag hat.
Deine Mappe beinhaltet nur die Tabelle, aber keinen Makrocode dafür?
Gruß
Michael
AW: Messagebox wennn Geburtstag
01.12.2017 11:26:12
Michael
Hallo RPP63
dein Vorschlag gefällt mir....doch deine Tabelle ist dort anders aufgebaut als meine
Spalten: lf-Nr., Vorname, Name, Straße, Hausnummer, PLZ, Ort, Tel, Fax, Handy, Mail, Web, Geburtstag
Der Code von dir ist sehr kompliziert, wüsste nicht, wie ich den für mich anpassen sollte?
In deinem Fall de Messagebox, würde ich mir gern dort anzeigen lasen, wer heute, in 3, 5 und 7 Tagen Geburtstag hat?
Gruß
Michael
Anzeige
Bin ich unsichtbar?
01.12.2017 11:27:19
RPP63
Meine Mappe ausprobiert?
Makro RPP gestartet (was man natürlich per Workbook_Open() aufrufen kann)?
AW: Bin ich unsichtbar?
01.12.2017 12:03:27
Michael
Hallo RPP,
sicher habe ich deine Mappe ausprobiert und wie die MessageBox das anzeigt, finde ich gut.
Ich hätte gerne, Das er Geburtstage "heute" das zeigt deine Box an und zusätzlich soll dort stehen,
in 3 und in 7 Tagen.
Das zeigt deine Box nicht an.
Meine Frage, wie man deinen Code dort so verändern müsste unter Berücksichtigung meiner Spaltenangabe.
Ich weiß jetzt nicht, was du mir mit deiner Antwort sagen willst?
Gruß
Einfach anpassen:
01.12.2017 12:29:56
RPP63
Modul Modul1
Option Explicit 
Dim Birthday As String 
 
Sub RPP() 
Birthday = "Aktuelle Geburtstage:" & vbLf & String(80, "-") & vbLf 
Ausgabe Format(Date, "dd. mmmm") 
Ausgabe Format(Date + 3, "dd. mmmm") 
Ausgabe Format(Date + 7, "dd. mmmm") 
Birthday = Birthday & vbLf & "Nächste Geburtstage:" & vbLf & String(80, "-") & vbLf 
MsgBox Birthday 
Birthday = vbNullString 
End Sub 
 
Sub Ausgabe(Heute As String) 
Dim Fund As Range, firstAddress As String 
Set Fund = Tabelle1.Columns(2).Find(Heute, , xlValues, xlWhole) 
If Not Fund Is Nothing Then 
   firstAddress = Fund.Address 
   Do 
      Birthday = Birthday & _
         Fund.Offset(0, -1) & vbTab & vbTab & Fund.Offset(0, 1) & ", " & vbTab & Fund.Offset(0, 2) & vbLf 
      Set Fund = Tabelle1.Columns(2).FindNext(Fund) 
   Loop While Not Fund Is Nothing And Fund.Address <> firstAddress 
End If 
Set Fund = Nothing 
End Sub 

Gruß Ralf
Anzeige
AW: Einfach anpassen:
01.12.2017 12:39:16
Michael
Hallo RPP,
vielen Dank, ich wird es später zu Hause mal ausprobieren(anpassen)
Eine dumme Frage noch?
Gehört der Code hinter das Tabellenblatt, oder unter "Diese Arbeitsmappe"?=
Gruß
Steht in grün dort
01.12.2017 12:53:09
RPP63
Modul Modul1
Heißt, es ist ein allgemeines Modul (Einfügen, Modul)
Wenn es automatisch beim Öffnen der Datei gestartet werden soll, musst Du folgendes in "DieseArbeitsmappe" ergänzen:
Private Sub Workbook_Open()
Call RPP
End Sub

Anpassen musst Du natürlich schon (Bereiche, Spalten, ...).
Wenn Du damit Probleme bekommst, dann frag einfach nach. ;)
Gruß Ralf
Anzeige
AW: Steht in grün dort
01.12.2017 12:59:28
Michael
Ahh...OK ;)
Ich versuche es nachher...Danke,
Gruß
Michael
AW: Steht in grün dort
01.12.2017 13:20:17
Michael
Hallo RPP,
ich habe den Code in eine Testmappe eigegeben.
Spalte C steht bei mir für Vorname
Spalte D für Nachnahme
und Spalte L für Geburtsdatum.
die MessageBox wird beim Start schon einmal angezeigt.
Ich frag mich jetzt nur, wie in dem Code ich die Spalten angeben muss?
Gruß
M
Lade die Datei hoch
01.12.2017 13:32:14
RPP63
Namen anonymisieren (Name1, Name2, ... reicht, wie auch in meinem Beispiel).
Gruß Ralf
AW: Lade die Datei hoch
01.12.2017 13:50:44
Michael
Sei mir nicht böse...aber meine Tabelle sieht anders aus und deshalb verstehe ich nicht, was ich da anonymisieren soll.
Hier meine Testmappe mit dem Ergebnis deines Codes
https://www.herber.de/bbs/user/118037.xlsm
Anzeige
AW: Lade die Datei hoch
01.12.2017 17:24:08
Michael
Hallo Ralf,
ich bekomme das mit deinem Code nicht hin.
MessageBox öffnet sich, aber kein Name wird angezeigt?
Hilffeee :)
Gruß
Michael
AW: Deine Datei mit Ralf Code editiert....
02.12.2017 14:28:20
Michael
Hi Robert,
super, vielen Dank....es läuft. :)
Jetzt vergleiche ich mal beide Codes...den von dir und mir und schau, was hätte ich machen müssen.
Danke für eure Hilfe.
Gruß
Michael
Na das freut mich :-) Gruß-owT
02.12.2017 14:50:55
robert
AW: Na das freut mich :-) Gruß-owT
02.12.2017 14:55:35
Michael
Hallo Robert,
mit deiner Hilfe hat es geklappt.
Doch leider hab ich nicht berücksichtigt, das du ja in Spalte P immer eine Formel stehen hast.
Ich speichere über eine Userform neue Kontakte mit diesem Code:
txtInfoPerson)
'hier wir Vor und Nachname als Dateiname benutzt
With ActiveSheet
intersteleerezeile = .Cells(Rows.Count, 1).End(xlUp).Row + 1
.Cells(intersteleerezeile, 1).Value = Me.txtNummer.Value
.Cells(intersteleerezeile, 2).Value = Me.cboAnrede.Value
.Cells(intersteleerezeile, 3).Value = Me.txtVorname.Value
.Cells(intersteleerezeile, 4).Value = Me.txtName.Value
.Cells(intersteleerezeile, 5).Value = Me.txtStraße.Value
.Cells(intersteleerezeile, 6).Value = Me.txtHausnummer.Value
.Cells(intersteleerezeile, 7).Value = Me.txtPostleitzahl.Value
.Cells(intersteleerezeile, 8).Value = Me.txtWohnort.Value
.Cells(intersteleerezeile, 9).Value = Me.txtFestnetz.Value
.Cells(intersteleerezeile, 10).Value = Me.txtFax.Value
.Cells(intersteleerezeile, 11).Value = Me.txthandy.Value
.Cells(intersteleerezeile, 12).Value = Me.txtGeburtsdatum.Value
.Cells(intersteleerezeile, 13).Value = Me.txtMailadress.Value
.Cells(intersteleerezeile, 14).Value = Me.txtWebsite.Value
For Each objControl In Controls 'leert die Textboxen
Select Case TypeName(objControl)
Case "TextBox"
objControl.Text = ""
End Select
Next
cboAnrede.ListIndex = -1
txtNummer.Value = .Cells(intersteleerezeile, 1).Value + 1
End With
MsgBox "Datensatz wurde erstellt und Textdatei gespeichert"
End Sub
Wie ändere ich den Code so, das er beim speichern auch gleich die Formel in Spalte P einträgt?
Gruß
Michael
Anzeige
AW: Na und..
02.12.2017 15:05:19
robert
Wird die Spalte P dadurch überschrieben? Ich glaube nicht...
Kopiere die Formel einfach zB. bis P1000
Gruß
robert
AW: Na und..
02.12.2017 15:08:03
Michael
das habe ich mir gedacht, das du das sagst :)
Habe es vorher schon getan.
Hätte gerne nur gewusst, wie man eine Formel in den Code einsetzt? ;)
Gruß
Michael
AW: Na und..
02.12.2017 15:14:46
Michael
Oh..Robert, mir ist grad aufgefallen, das die Namen in der MessageBox Vertauscht angezeigt werden.
Also erst Nachname, dann Vorname.
Wo drehe ich das im Code um?
AW: Na und..
02.12.2017 15:15:21
Michael
Oh..Robert, mir ist grad aufgefallen, das die Namen in der MessageBox Vertauscht angezeigt werden.
Also erst Nachname, dann Vorname.
Wo drehe ich das im Code um?
Anzeige
AW: Neue Datei...
02.12.2017 15:43:57
Michael
Super...jetzt ist meine Mappe auch fertig :)
ich danke dir.
Gruß
Michael
AW: Neue Datei...
02.12.2017 15:43:58
Michael
Super...jetzt ist meine Mappe auch fertig :)
ich danke dir.
Gruß
Michael
Freut mich, wenn ich helfen konnte-owT
02.12.2017 15:47:27
robert
AW: Neue Datei...
02.12.2017 16:01:18
Michael
Super...jetzt ist meine Mappe auch fertig :)
ich danke dir.
Gruß
Michael

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige