Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1196to1200
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ist Summe bei Interior.ColorIndex = 37

Ist Summe bei Interior.ColorIndex = 37
Heinz
Hallo Leute
Habe in unteren Code wenn ich in Spalte A ein Datum eingebe,wird mir eine Spalte vorher die Spalte A bis G eingefärbt.
Nun möchte ich,wenn die Zelle eingefärbt wird, das in D die Summe bis zur oberen eingefärbten Spalte die Formel =Summe() eingefügt wird.
Die obere eingefärbte Spalte D darf nicht mehr mitgerechnet werden.
Zb. D 50 = Interior.ColorIndex = 37
D 60 = Interior.ColorIndex = 37
Jetzt würde in D60 die Formel =SUMME(D51:D59) reingehören.
Ich hoffe es ist so halbwegs beschrieben.
Wäre Super wenn mir dazu jemand helfen könnte.
Gruß
Heinz
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Row > 1 Then
If IsDate(Target) Then
Range(Target.Offset(-1, 0), Target.Offset(-1, 6)).Interior.ColorIndex = 37
Else
On Error Resume Next ' Bei Fehler weiter machen
Range(Target.Offset(-1, 0), Target.Offset(-1, 6)).Interior.ColorIndex = xlNone
End If
On Error Resume Next
If Target.Column = 1 And Target  "" Then 'nur Spalte A und Zelle nicht leer
Target = DateSerial(Cells(1, 16), Cells(1, 15), Target.Value) 'O1=Monat P1=Jahr
End If
End If
End Sub

AW: Ist Summe bei Interior.ColorIndex = 37
06.02.2011 10:44:43
Tino
Hallo,
bin mir nicht sicher ob ich alles richtig verstanden habe!
Kannst mal diese Variante testen.
kommt als Code in Tabelle
Option Explicit 
 
Private Sub Worksheet_Change(ByVal Target As Range) 
Dim rngSumColor As Range 
If Target.Column = 1 And Target.Row > 1 Then 
Application.EnableEvents = False 
   If IsDate(Target) Then 
       Range(Target.Offset(-1, 0), Target.Offset(-1, 6)).Interior.ColorIndex = 37 
       Set rngSumColor = Find_Farbbereich(Columns(4), 37) 
       If Not rngSumColor Is Nothing Then 
           Cells(Target.Row, 4).Formula = "=SUM(" & rngSumColor.Address & ")" 
       Else 
           Cells(Target.Row, 4) = "" 
       End If 
   Else 
       On Error Resume Next ' Bei Fehler weiter machen 
       Range(Target.Offset(-1, 0), Target.Offset(-1, 6)).Interior.ColorIndex = xlNone 
       Cells(Target.Row, 4) = "" 
   End If 
 
    On Error Resume Next 
    If Target.Column = 1 And Target <> "" Then 'nur Spalte A und Zelle nicht leer 
           Target = DateSerial(Cells(1, 16), Cells(1, 15), Target.Value) 'O1=Monat P1=Jahr 
    End If 
Application.EnableEvents = True 
End If 
 
End Sub 
kommt als Code in Modul1
Option Explicit 
 
Function Find_Farbbereich(rngBereich As Range, intColorIndex As Integer) As Range 
Dim rngErste As Range, rngLetzte As Range 
Application.FindFormat.Clear 
Application.FindFormat.Interior.ColorIndex = intColorIndex 
With rngBereich 
    Set rngErste = .Cells.Find("", After:=.Cells(.Rows.Count, 1), SearchDirection:=xlNext, SearchFormat:=True) 
    Set rngLetzte = .Cells.Find("", SearchDirection:=xlPrevious, SearchFormat:=True) 
End With 
Application.FindFormat.Clear 
 
If Not rngErste Is Nothing Then 
    If Not rngLetzte Is Nothing Then 
        If rngLetzte.Row - rngErste.Row > 1 Then 
            Set Find_Farbbereich = Range(rngErste.Offset(1, 0), rngLetzte.Offset(-1, 0)) 
        End If 
    End If 
End If 
End Function 
Gruß Tino
Anzeige
AW: Ist Summe bei Interior.ColorIndex = 37
06.02.2011 18:39:13
Heinz
Hallo Tino
Ertmals recht herzlichen Dank.
Du bist auf der richtigen Spur,nur so ganz funktioniert es noch nicht richtig.
Habe mal eine Testdatei hochgeladen.
Gruß
Heinz
https://www.herber.de/bbs/user/73413.zip
AW: Ist Summe bei Interior.ColorIndex = 37
06.02.2011 19:12:04
Heinz
Hallo Tino
Du bist genial !!!!!!!!
Genau sooooooo,und nicht anders !!
Recht herzlichen Dank
Heinz
AW: Ist Summe bei Interior.ColorIndex = 37
06.02.2011 19:24:04
Heinz
Hallo Tino
Ein kleines Problem ist mir aufgefallen,da ich diese Werte weiter bearbeiten muss.
Ist die Formel so nicht richtig
=SUMME($D$9576:$D$9579)

Richtig wäre
=SUMME($D9576:$D9579)

Danke
Heinz
Anzeige
AW: Ist Summe bei Interior.ColorIndex = 37
06.02.2011 19:56:08
Tino
Hallo,
versuch es mal so und schreibe die Formelzeile so.
Cells(Target.Row - 1, 4).Formula = "=SUM(" & rngSumColor.Address(0) & ")"
Gruß Tino
AW: Ist Summe bei Interior.ColorIndex = 37
06.02.2011 20:05:46
Heinz
Leider , Leider Tino
Es ist leider keine Veränderung in der Formel.
Gruß
Heinz
AW: Ist Summe bei Interior.ColorIndex = 37
06.02.2011 20:23:15
Heinz
Hallo Tino
Jetzt funktioniert es bei mir auch.
Das war wieder eine Meisterleistung von Dir !!
Ich bedanke mich recht,recht herzlich bei dir.
Wünsche dir noch einen schönen Sonntagabend.
Gruß
Heinz
Anzeige

196 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige