Microsoft Excel

Herbers Excel/VBA-Archiv

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

MSG-TExt für einen bestimmten Zeitraum anzeigen | Herbers Excel-Forum


Betrifft: MSG-TExt für einen bestimmten Zeitraum anzeigen von: Wolle
Geschrieben am: 19.11.2009 06:49:42

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

  •   

    Betrifft: MsgBox abhängig vom Tagesdatum von: Erich G.
    Geschrieben am: 19.11.2009 08:29:55

    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


      

    Betrifft: AW: MSG-TExt für einen bestimmten Zeitraum anzeigen von: fcs
    Geschrieben am: 19.11.2009 08:34:27

    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


      

    Betrifft: AW: MSG-TExt für einen bestimmten Zeitraum anzeigen von: Wolle
    Geschrieben am: 19.11.2009 09:01:53

    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)


      

    Betrifft: AW: MSG-TExt für einen bestimmten Zeitraum anzeigen von: Wolle
    Geschrieben am: 19.11.2009 09:15:24

    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


      

    Betrifft: AW: MSG-TExt für einen bestimmten Zeitraum anzeigen von: fcs
    Geschrieben am: 19.11.2009 10:42:02

    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



    Beiträge aus den Excel-Beispielen zum Thema "MSG-TExt für einen bestimmten Zeitraum anzeigen"