Clever-Excel-Forum

Normale Version: Wie Zellen einfärben wenn diese in der Formel einer anderen Zelle referenziert wird?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallöchen!

Ich bin nur "alltagstauglich" mit EXCEL vertraut, steige jetzt aber gerade ein bisschen in fortgeschrittene Geschichten ein. In diesem Zuge baue ich mich gerade ein recht komplexes Excel-Meisterwerk in dem ich eine Menge Finanzkram automatisch berechnen lasse.

Ich habe nun folgendes Problem, bzw. folgenden Wunsch:

Auf dem Blatt "Buchungen" habe ich meine ganzen Vorgänge und auf einem zweiten Blatt namens "Auswertung" finden die ganzen Berechnungen usw. statt. Wie kann ich es bewerkstelligen, dass eine Zelle (oder vielleicht sogar die ganze Zeile?) die in einer Formel auf Blatt "Auswertung" behandelt wird, auf dem Blatt "Buchungen" z.B. eingefärbt wird?

Z.B. Auf "Auswertungen" summiere ich in einer Zelle per SUMMEWENN(S) Beträge "Buchungen" die von Kunde X im ersten Halbjahr gekommen sind (oder sowas in der Art). Nun würde ich die betreffenden Zellen oder Zeilen auf dem Blatt "Buchungen" gerne automatisch z.B. grün hinterlegen, damit ich sehe, dass diese Zeilen auch tatsächlich von der Formel auf dem Blatt "Auswertung" miteinbezogen wurden.

So könnte ich z.B. easy sehen welche Zeilen aus irgendeinem Grund von keiner Auswertungsformel beachtet werden um zu debuggen.

Ich hoffe ich konnte das einigermaßen verständlich erklären (ist nicht so meine Stärke! :)

HILFE! Smile
DANKE!!!

PS: Ich weiß natürlich, dass ich per "bedingte Formatierung" quasi die Suchkriterien mit denen die Formeln auf dem Auswertungsblatt arbeiten kopieren und für ebendiese bedingte Formatierung nutzen könnte. Das wäre aber mega-aufwändig, weil es eine MENGE unterschiedliche Berechnungen und Kriterien sind, und der Workflow für massenhafte Formatierungsbedingungen innerhalb EXCEL echt nervig ist. Außerdem gibt's sofort Probleme falls ich bei den Auswertungen Suchkriterien ändere. Dann stimmt das alles nicht mehr überein.
Hallo,


Zitat:Ich hoffe ich konnte das einigermaßen verständlich erklären (ist nicht so meine Stärke!
schlicht und ergreifend: nein!!


Lade bitte eine Beispieldatei (Daten anonymisiert; Aufbau identisch deinem Original) mit händisch eingetragenem Wunschergebnis hoch. https://www.clever-excel-forum.de/Thread...ng-stellen
(25.07.2020, 22:53)WillWissen schrieb: [ -> ]Hallo,

schlicht und ergreifend: nein!!

Lade bitte eine Beispieldatei (Daten anonymisiert; Aufbau identisch deinem Original) mit händisch eingetragenem Wunschergebnis hoch. 
^
Okay, sorry, ich wollte nicht verwirren, zumal das Anliegen an sich eigentlich einfach ist. Es fällt mir oft schwer mich kurz und bündig und gleichzeitig umfassend auszudrücken.

Ich habe eine Beispiel-Datei mit einem vereinfachten, aber strukturell identischem Aufbau angehängt.

DANKE!
Moin Toddy,

wäre das OK für dich?
Arbeitsblatt mit dem Namen 'Buchungen'
BCDEFGH
2NameBetragDatumStadtAnzeige:Frank
3
4Frank345,00 €01.08.2018Hamburg
5Anna3.456,00 €05.08.2020Hamburg
6Bill67.345,00 €08.04.1999Berlin
7Makrus34,00 €03.06.2001Hannover
8Frank76,00 €08.04.2011Hamburg
9Frank536,00 €05.04.1998Frankfurt
10Katrin7.667,00 €01.01.1989München
11Frank224,00 €03.08.2005Frankfurt

Zellebedingte Formatierung...Format
B21: $B2=$H$2abc
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Hallo,

teste es mal damit:

Option Explicit

Sub NachfolgerPruefen()
  'Kuwer, 20200726
  Dim blnKeinNachfolger As Boolean
  Dim iAN As Long, iLN As Integer
  Dim rngC As Range, rngQ As Range
  Dim strN As String
 
  Application.ScreenUpdating = False
  Set rngQ = Tabelle1.Range("B4").CurrentRegion
  rngQ.Interior.ColorIndex = -4142
  For Each rngC In rngQ.Rows
    ZeigeSpurZuNachfolgern rngC.Cells(1)
    On Error Resume Next
    iAN = 1
    Do
      iLN = iLN + 1
      rngC.Cells(1).NavigateArrow TowardPrecedent:=False, ArrowNumber:=iAN, LinkNumber:=iLN
      blnKeinNachfolger = ActiveCell.Address(External:=True) = rngC.Cells(1).Address(External:=True)
      If blnKeinNachfolger Then
        If iLN = 1 Then
          Exit Do
        Else
          iAN = iAN + 1
          iLN = 0
          ZeigeSpurZuNachfolgern rngC.Cells(1)
        End If
      Else
        strN = ActiveCell.Formula
        If InStr(1, strN, rngC.Cells(1).Value) * InStr(1, strN, rngC.Cells(4).Value) Then
          rngC.Interior.Color = ActiveCell.Offset(, -1).Interior.Color
          Exit Do
        End If
      End If
    Loop
    rngC.Cells(1).Parent.ClearArrows
    rngC.Cells(1).Parent.Activate
    iLN = 0
  Next rngC
  Application.ScreenUpdating = True
End Sub

Private Sub ZeigeSpurZuNachfolgern(Zelle As Range)
  #If VBA6 Then
    Zelle.ShowDependents
  #Else
    Zelle.Parent.Activate
    Zelle.Activate
    Application.ExecuteExcel4Macro "TRACER.DISPLAY(FALSE,TRUE)"
  #End If
End Sub
[attachment=33192]

Gruß Uwe
Heyho!

COOLES DING! Erstmal vielen Dank, das sieht soweit super aus!

Ich übertrage das mal in mein Excel-Monster und schaue ob das mit dem ganzen Schlamassel dort auch klar geht. Aber bisher sieht das sehr fein aus // edit: falls ich das hinkriege  :20: Smile 
VIELEN DANK!

Auch DANKE an WillWissen für den alternativen Tipp (der in meinem Fall nicht ganz so nice ist wie die VBA Funktion von Kuwer, aber bin trotzdem dankbar für jeden Beitrag! Smile

Dann probier' ich mal schön aus!
cheerio!