Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: MSG-TExt für einen bestimmten Zeitraum anzeigen

MSG-TExt für einen bestimmten Zeitraum anzeigen
Wolle
Hallo Forumgemeinde,
nachdem Ihr mir so klasse mit der MSG Box und dem Text schon geholfen habt, hoffe ich auf weitere Hilfe.
Ich möchte gerne den Text der MSG-Box nicht nur für eine Tag anzeigen lassen, sonder für einen Zeitraum ... sagen wir mal 5 Tage.
Desweiteren frage ich mich ob es die Möglichkeit gibt, den Text aus der Exceltabelle zu entnehmen sowie auch den Zeitraum.
z.B. aus Tabelle 3(Ferien) A1=Anfangsdatum B1=Enddatum C1=Der Text
Wenn Ihr mir dabei helfen könntet, währe das superklasse von Euch.
Gruß aus Norddeutschlan sagt Wolle
Bisher hatte ich es so gelöst:
  • 
    Private Sub Workbook_Open()
    Dim msgText As String
    Dim msgStyle As Integer
    Dim msgTitle As String
    Select Case Date
    Case DateSerial(Year(Date), 11, 19)
    msgText = "Am Dienstag 15.12.2009 ist Weihnachtsfeier der RLS"
    msgStyle = vbInformation
    msgTitle = "Information"
    Case DateSerial(Year(Date), 11, 20)
    msgText = "Am Dienstag 15.12.2009 ist Weihnachtsfeier der RLS"
    msgStyle = vbInformation
    msgTitle = "Information"
    Case DateSerial(Year(Date), 12, 23)
    msgText = "Frohe Weihnachten"
    msgStyle = vbInformation
    msgTitle = "Information"
    End Select
    Call MsgBox(msgText, msgStyle, msgTitle)
    End Sub
    

  • Anzeige
    MsgBox abhängig vom Tagesdatum
    19.11.2009 08:29:55
    Erich
    Hi Vorname(?),
    ein paar Möglichkeiten zum Ausprobieren:
    
    Private Sub Workbook_Open()
    Dim msgText As String, msgStyle As Integer, msgTitle As String
    msgStyle = vbInformation
    With Me.Worksheets("Tabelle1")
    msgTitle = .Cells(1, 2)                   ' Information in Zelle B1
    Select Case Date
    Case 40136 To 40137                    ' Datumse als Zahlen
    msgText = "Treffer"
    Case .Cells(3, 3) To .Cells(3, 4)      ' von / bis   in Zellen C3:D3
    msgText = .Cells(3, 5)              ' Text        in Zelle  E3
    Case DateSerial(Year(Date), 11, 19) To DateSerial(Year(Date), 11, 19) + 4 ' 5 Tage
    msgText = "Am Dienstag 15.12." & Year(Date) & " ist Weihnachtsfeier der RLS"
    Case DateSerial(Year(Date), 12, 23)
    msgText = "Frohe Weihnachten"
    End Select
    End With
    MsgBox msgText, msgStyle, msgTitle
    End Sub
    
    Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
    Anzeige
    AW: MSG-TExt für einen bestimmten Zeitraum anzeigen
    19.11.2009 08:34:27
    fcs
    Hallo Wolle,
    das ist problemlos möglich.
      With ThisWorkbook.Worksheets("Ferien")
    msgText = "Anfang: " & Format(.Range("A1"), "DD.MM.YYYY") & "   Ende: " _
    & Format(.Range("B1"), "DD.MM.YYYY") & vbLf & .Range("C1")
    End With
    
    Hier werden im Meldungstext in Zeile 1 die beiden Datumsangaben ausgegeben und ab Zeile 2 der Text ausgegeben.
    Gruß
    Franz
    Anzeige
    AW: MSG-TExt für einen bestimmten Zeitraum anzeigen
    19.11.2009 09:01:53
    Wolle
    Hallo Franz,
    danke das sieht interresant aus ... nur wo und wie baue ich den Code ein? Habe von VBA nicht so richtig ahnung. Kannst Du mir helfen?
    Danke für Deine Hilfe.
    Wolle (Wolfgang)
    AW: MSG-TExt für einen bestimmten Zeitraum anzeigen
    19.11.2009 09:15:24
    Wolle
    Hallo Franz,
    habe gerde den Code eingebaut bekommen. Nur er soll mir nicht den Zeitraum in die Box schreiben, sonder das ist der Zeitraum, wo die Meldung erscheinen soll.
    Gruß Wolle
    Anzeige
    AW: MSG-TExt für einen bestimmten Zeitraum anzeigen
    19.11.2009 10:42:02
    fcs
    Hallo Wolle,
    da hatte ich die Frage wohl nicht genau gelesen bzw. falsch interpretiert.
    Gruß
    Franz
    So wird beim Öffnen der Datei während eines Zeitraums eine Meldung angezeigt. Verglichen werden dabei Anfang und Ende mit dem Systemdatum auf dem Rechner.
    Private Sub Workbook_Open()
    Dim msgText As String
    Dim msgStyle As Integer
    Dim msgTitle As String
    With ThisWorkbook.Worksheets("Ferien")
    Select Case Date
    Case .Range("A1") To .Range("B1")
    msgText = Format(.Range("A1"), "DD.MM.YYYY") & "  bis  " _
    & Format(.Range("B1"), "DD.MM.YYYY") & vbLf & .Range("C1")
    msgStyle = vbInformation
    msgTitle = "Information"
    Case Else
    msgText = "No Message"
    msgStyle = vbInformation
    msgTitle = "Information"
    End Select
    MsgBox msgText, msgStyle, msgTitle
    End With
    End Sub
    

    Anzeige
    ;

    Forumthreads zu verwandten Themen

    Anzeige
    Anzeige
    Anzeige
    Entdecke relevante Threads

    Schau dir verwandte Threads basierend auf dem aktuellen Thema an

    Alle relevanten Threads mit Inhaltsvorschau entdecken
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Entdecke mehr
    Finde genau, was du suchst

    Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

    Suche nach den besten Antworten
    Unsere beliebtesten Threads

    Entdecke unsere meistgeklickten Beiträge in der Google Suche

    Top 100 Threads jetzt ansehen
    Anzeige