Thema Datum  Von Nutzer Rating
Antwort
09.05.2018 08:42:36 V.B.A.
NotSolved
09.05.2018 10:34:26 V.B.A.
NotSolved
09.05.2018 10:48:23 Werner
NotSolved
09.05.2018 10:54:04 Gast50769
NotSolved
09.05.2018 11:59:35 Werner
NotSolved
09.05.2018 12:10:58 V.B.A.
NotSolved
Rot Einzelne Einträge in Zelle prüfen und auf bestimmtes Format setzen
09.05.2018 14:17:40 Werner
NotSolved
09.05.2018 14:44:23 V.B.A.
Solved

Ansicht des Beitrags:
Von:
Werner
Datum:
09.05.2018 14:17:40
Views:
534
Rating: Antwort:
  Ja
Thema:
Einzelne Einträge in Zelle prüfen und auf bestimmtes Format setzen

Hallo,

dann teste mal:

Public Sub cmd_Simultanität_aus_Click()
Dim rngAuswahl As Range, c As Range
Dim objRangeCollection As Collection

Application.DisplayAlerts = False

Set objRangeCollection = New Collection

'Fehlerbehandlung der Application.Inputbox
'der Code ist von Nepumuk aus dem Office-Forum
Do
    objRangeCollection.Add Application.InputBox(Prompt:= _
    "Bitte die Zelle(n) markieren, deren Simultanität geändert werden soll:", Title:="Auswahl", Type:=8)
    If TypeOf objRangeCollection(objRangeCollection.Count) Is Range Then
        Set rngAuswahl = objRangeCollection(objRangeCollection.Count)
        Exit Do
    ElseIf IsEmpty(objRangeCollection(objRangeCollection.Count)) Then
        MsgBox "Objektzuweisung fehlgeschlagen. Bitte nochmal versuchen", _
        vbCritical, "Fehlermeldung"
    ElseIf Not objRangeCollection(objRangeCollection.Count) Then
        Application.DisplayAlerts = True
        Exit Sub 'Abbrechen geklickt
    Else
        MsgBox "Fehler " & CStr(vbObjectError) & vbLf & vbLf & _
        "Unbekannter Objektfehler beim zuweisen eines Bereiches.", _
        vbCritical, "Fehlermeldung"
        Application.DisplayAlerts = True
        Exit Sub
    End If
Loop
 
If rngAuswahl.Rows.Count > 1 Then
    MsgBox "Bitte wählen Sie nur ein Equipment / eine Anlage aus.", vbCritical
    Exit Sub
End If

For Each c In rngAuswahl.Cells
    If c.Column <= 6 Then
        If IsNumeric(c.Value) And Not IsEmpty(c.Value) Then
            If UCase(Cells(c.Row, 7).Value) <> "X" Then
                MsgBox "Bitte wählen Sie erst die gesamte Zeile simultan.", vbCritical
                Exit Sub
            End If
            If c.Font.ColorIndex <> 16 Then
                c.Font.ColorIndex = 16
                Range("A6").Value = "Gebäude"
            ElseIf c.Font.ColorIndex = 16 Then
                c.Font.ColorIndex = xlAutomatic
                Range("A6").Value = "Gebäude"
            End If
        End If
    ElseIf c.Column = 8 Then
        If IsNumeric(c.Value) And Not IsEmpty(c.Value) Then
            If UCase(Cells(c.Row, 7).Value) <> "X" Then
                MsgBox "Bitte wählen Sie erst die gesamte Zeile simultan.", vbCritical
                Exit Sub
            End If
            If c.Font.ColorIndex <> 16 Then
                c.Resize(1, 3).Font.ColorIndex = 16
                Range("A6").Value = "Gebäude"
            ElseIf c.Font.ColorIndex = 16 Then
                ActiveSheet.Unprotect Password:=""
                c.Resize(1, 3).Font.ColorIndex = xlAutomatic
                Range("A6").Value = "Gebäude"
            End If
        End If
    End If
Next c

Application.DisplayAlerts = True
End Sub

 

Gruß Werner


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
09.05.2018 08:42:36 V.B.A.
NotSolved
09.05.2018 10:34:26 V.B.A.
NotSolved
09.05.2018 10:48:23 Werner
NotSolved
09.05.2018 10:54:04 Gast50769
NotSolved
09.05.2018 11:59:35 Werner
NotSolved
09.05.2018 12:10:58 V.B.A.
NotSolved
Rot Einzelne Einträge in Zelle prüfen und auf bestimmtes Format setzen
09.05.2018 14:17:40 Werner
NotSolved
09.05.2018 14:44:23 V.B.A.
Solved