Thema Datum  Von Nutzer Rating
Antwort
11.03.2025 23:07:28 MV16
*
Solved
12.03.2025 14:22:59 Gast60515
NotSolved
12.03.2025 14:29:47 Gast3196
NotSolved
12.03.2025 15:18:02 Gast88470
NotSolved
12.03.2025 16:05:18 Gast89795
NotSolved
12.03.2025 16:23:23 Gast89795
NotSolved
Rot VBA Code zu Auslesen vom aktuellen Status aus Tabelle - Anzeige auf UserForm
12.03.2025 17:29:08 Gast33630
NotSolved
13.03.2025 10:57:12 Gast83516
NotSolved

Ansicht des Beitrags:
Von:
Gast33630
Datum:
12.03.2025 17:29:08
Views:
1769
Rating: Antwort:
  Ja
Thema:
VBA Code zu Auslesen vom aktuellen Status aus Tabelle - Anzeige auf UserForm

Danke, das erste hat geklappt.

Das zweite, es soll ja nach diesen Werten geschaut und dann ausgeben werden:

K,1,M,o befinden sich in AW7:OX31

Datumszeile: AW2:OX2 für den aktuellen Tag

Die Mitarbeiter stehen inD7:D31

es soll dann der aktuelle Wert für diesen Tag ermittelt werden für alle MItarbeiter. Dieser soll dann Farbig mit Namen in einer UserForm dargestellt werden, so wie ich es in meiner Anfrage geschrieben habe

Wenn ich mit F8 anschaue wie der Code verläuft, bleibt er in einer Schleife von Zeile 16 bis Zeile 20.



Public Sub InitializeDashboard()

    Dim aktuellesDatum As Date
    Dim spaltenIndex As Long
    Dim mitarbeiterName As String
    Dim mitarbeiterStatus As String
    Dim lblName As MSForms.Label
    Dim lblStatus As MSForms.Label

    aktuellesDatum = Date
    spaltenIndex = 0

    'Spaltenindex finden
    For i = 1 To Worksheets("2025").Range("AW2:OX2").Columns.Count
        If Worksheets("2025").Cells(2, 48 + i - 1).Value = aktuellesDatum Then
            spaltenIndex = i
            Exit For
        End If
    Next i

    If spaltenIndex = 0 Then
        MsgBox "Keine Daten für das aktuelle Datum gefunden."
        Exit Sub
    End If

    'Mitarbeitername und -status auslesen (für MA1)
    mitarbeiterName = Worksheets("2025").Cells(7, 4).Value 'Name Mitarbeiter
    Debug.Print "Spaltenindex: " & spaltenIndex
    Debug.Print "Mitarbeiterstatus: " & mitarbeiterStatus
    mitarbeiterStatus = Worksheets("2025").Cells(7, 47 + spaltenIndex).Value

    'Labels in Frame MA1 zuweisen
    Set lblName = Me.Controls("MA1").Controls("lblName") 'Annahme: lblName für Name
    Debug.Print "lblName: " & lblName.Name
    Debug.Print "lblStatus: " & lblStatus.Name
    Debug.Print "Mitarbeitername: " & mitarbeiterName
    lblName.Caption = mitarbeiterName

    Set lblStatus = Me.Controls("MA1").Controls("lblStatus") 'Annahme: lblStatus für Status
    Debug.Print "lblName: " & lblName.Name
    Debug.Print "lblStatus: " & lblStatus.Name
    lblStatus.Caption = mitarbeiterStatus

    'Farbcode für Status
    Select Case mitarbeiterStatus
        Case "K"
            lblStatus.BackColor = vbRed
        Case "O"
            lblStatus.BackColor = vbWhite
        Case "M"
            lblStatus.BackColor = vbMagenta
        Case "1"
            lblStatus.BackColor = vbGreen
    End Select

End Sub

Private Sub UserForm_Click()

End Sub

Aber wie gesagt, das ist das erste VBA Projekt das ich angehe und ich dachte mit Gemini wäre das einfacher.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
11.03.2025 23:07:28 MV16
*
Solved
12.03.2025 14:22:59 Gast60515
NotSolved
12.03.2025 14:29:47 Gast3196
NotSolved
12.03.2025 15:18:02 Gast88470
NotSolved
12.03.2025 16:05:18 Gast89795
NotSolved
12.03.2025 16:23:23 Gast89795
NotSolved
Rot VBA Code zu Auslesen vom aktuellen Status aus Tabelle - Anzeige auf UserForm
12.03.2025 17:29:08 Gast33630
NotSolved
13.03.2025 10:57:12 Gast83516
NotSolved