Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Datum Suche in MSG Box ausgeben und farblich marki

Betrifft: Datum Suche in MSG Box ausgeben und farblich marki von: Rene
Geschrieben am: 28.08.2014 20:20:47

Guten Abend an alle,

Wäre mal wieder für eure Unterstützung dankbar.

Ziel ist das beim öffnen der Arbeitsmappe in Spalte B das Datum zB minus10 tage oder vom aktuellen Tagesdatum plus 5 gesucht/gefunden wird und über MSG Box dem User angezeigt wird.Es wäre schön wenn das zugehörige Projekt in Spalte A welches dem Datum Suchkriterien entspricht mit in der MSG Box angezeigt wird.Nahezu Perfekt ,wenn das betreffende Datum auch noch farblich markiert ,und in die betreffende Zelle gesprungen wird ,

anbei eine Beispieldatei um es zu verdeutlichen:

https://www.herber.de/bbs/user/92372.xlsm

Danke Rene

  

Betrifft: AW: Datum Suche in MSG Box ausgeben und farblich marki von: Adis
Geschrieben am: 28.08.2014 23:43:02

Hallo

hier eine kurze Makro Version zum kopieren. Zum Testen einfach in ein normales Modul kopieren und starten.
Ich hoffe sie funktioniert zufriedenstellend. İn die Schleife 2 muss noch der Aufruf der Anzeige eingefügt werden.
Die Variablen für Datum und Projekt Name sind bereits geladen.

Option Explicit

Sub Datum_markieren_undAnzeigen()
Dim Datum As Date, zDatum As Double
Dim Adr As String, Edr As String
Dim Projekt As String, z As Variant
   zDatum = CLng([h2])        'Datum als Zahl
   Adr = ActiveCell.Address   'ActiveCell.Adr
   Edr = [b2].End(xlDown).Address   'End-Adr.
   'Innenbereich Farbe löschen
   Range("B2", Edr).Interior.ColorIndex = xlNone

   '1. Schleife zum farblichen markieren
   For Each z In Range("B2", Edr)
      If CLng(z) <= zDatum - 10 Then z.Interior.ColorIndex = 3
      If CLng(z) >= zDatum + 5 Then z.Interior.ColorIndex = 6
   Next z

   '2. Schleife zum Anzeigen
   For Each z In Range("B2", Edr)
      Projekt = Empty:  Datum = CDate(z)  'Projekt Name laden
      If z.Interior.ColorIndex = 3 Then Projekt = z.Cells(1, 0)
      If z.Interior.ColorIndex = 6 Then Projekt = z.Cells(1, 0)
      If Projekt <> Empty Then
         z.Select
      
      'hier muss die Meldung aufgerufen werden
      
      End If
   Next z
   'alte Adresse zurücksetzen
   Range(Adr).Select
End Sub
Gruss Adis


  

Betrifft: AW: Datum Suche in MSG Box ausgeben und farblich marki von: Rene
Geschrieben am: 29.08.2014 11:35:11

Hallo Adis

das einfärben der Zellen funktioniert super ,könntest du mir noch einen Ansatz für die Ausgabe in der MSG Box geben? Leider habe ich damit keinerlei Erfahrungen und die "gefundenen Codes" helfen bis jetzt nicht wirklich weiter :-)

regards


  

Betrifft: AW: Datum Suche in MSG Box ausgeben und farblich marki von: Adis
Geschrieben am: 29.08.2014 13:37:11

Hallo

es freut mich sehr das es funktioniert. Unten ein kleines Testprogramm mit 3 Varianten wie die MsgBox aussehen kann. Selbst entscheiden was optisch besser gefaellt. Reine Geschmacksache. Basis ist die MsgBox im Auto_Open ThisWorkbook.

kurzer Tipp dazu. Projekt und Datum waren ja als "xxxx" schon vorgegeben. An der Stelle habe ich den String aufgetrennt und die Variablen mit & Zeichen eingefügt. Mit Chr(10) geht man auf die naechste Zeile. Manche programmieren auch vbLF als LineFeed. Bitte selbst entscheiden was gefaellt.

Sub MsgBox_Test()
Dim Datum As Date, Projekt As String
    'Projekt Name + Datum aus Zeile 2 laden
    Datum = CDate(Cells(2, 2))
    Projekt = "Test  " & Cells(2, 1)
   'drei Meldungen:  Selbst entscheiden was optisch besser gefaellt
   MsgBox "Es gibt offene/anstehende  Wareneingänge zum Projekt:  " & Projekt & "   Datum  " &  _
Datum & " bitte prüfen !", vbInformation, "Rectiquest offene Wareneingänge"
   MsgBox "Es gibt offene/anstehende  Wareneingänge zum Projekt:  " & Projekt & Chr(10) & " _
Datum  " & Datum & " bitte prüfen !", vbInformation, "Rectiquest offene Wareneingänge"
   MsgBox "Es gibt offene/anstehende  Wareneingänge" & Chr(10) & "Projekt:  " & Projekt & Chr( _
10) & "Datum  " & Datum & " bitte prüfen !", vbInformation, "Rectiquest offene Wareneingänge"
End Sub
Gruss Adis


  

Betrifft: AW: Datum Suche in MSG Box ausgeben und farblich marki von: Rene
Geschrieben am: 29.08.2014 20:35:59

Guten Abend Adis

Ich bin immer wieder begeistert was man mit VBA alles machen kann,dein Code funktioniert super ,ist es auch möglich ( Projekt = "Test " & Cells(2, 1))hier mit einer Schleife zu arbeiten ,so das zum gefundenen Datum das jeweilige Projekt angezeigt wird ,in der MSG dann je Datum je Projekt ? hmm weiß nicht ob ich mich verständlich genug ausgedrückt habe :-)

Vielen Dank René


  

Betrifft: AW: Datum Suche in MSG Box ausgeben und farblich marki von: Adis
Geschrieben am: 31.08.2014 00:26:35

Hallo

das Problem wurde in meiner 1. Antwort schon gelöst. Die 2. For Next Schleife ist für MsgBox Anzeige vorgesehen!
Hier steht ja auch der Text als Kommentar: hier die Meldung einfügen.

Hier muss nur die MsgBox hinein kopiert werden die gewünscht ist. Im Testmakro stehen ja 3 zur Auswahl.
Die gewünschte MsgBox vom Text MsgBox bis zum Ende des Text String in die For Next Schleife 2 kopieren.
Das ist alles. In dieser Schleife werden die Variablen Datum und Projekt aus der Spalte A + B geladen.
Sollte der Projekt Name in einer anderen Spalte stehen muss nur die Spalte der Variable geaendert werden.

Gruss Adis


  

Betrifft: AW: Datum Suche in MSG Box ausgeben und farblich marki von: Rene
Geschrieben am: 31.08.2014 00:59:03

Hallo Adis

Sorry , vollkommen richtig die Lösung gab es schon mit der 1.Antwort .Hatte beim auskommentieren einen Fehler.

Funktioniert einwandfrei , nochmals danke

Rene


 

Beiträge aus den Excel-Beispielen zum Thema "Datum Suche in MSG Box ausgeben und farblich marki"