Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
720to724
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
720to724
720to724
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Liste aller Nachfolger

Liste aller Nachfolger
17.01.2006 13:14:30
Vliegen
Hallo allen,
Die Formelüberwachung gibt einem per Pfeil alle Nachfolgezellen auf den gleichen Tabellenblatt und zeigt per Ikon an wenn es noch Nachfolger auf anderen Tabellenblättern gibt. Gibt es ein Möglichkeit sich diese Nachfolger auf andern Blättern per Makro namentlich auflisten zu lassen. Hab eine sehr umfangreiche Anwendung mit vielen Tabellenblättern deren Zellen sich gegenseitig "beformeln" und es wäre wirklich praktisch wenn man wüsste wo überall eine Veränderung ihre Auswirkungen hat.
Hab mal in der Recherche nach Nachfolger gesucht aber dort ist nur das gleiche Tabellenblatt erwähnt.
Freue mich über alle Ratschläge.
Gruss,
François

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Liste aller Nachfolger
17.01.2006 14:23:11
bst
Hallo François,
mal als Ansatz. Da Precedents und Dependents scheinbar nur innerhalb eines WorkSheets
funktionieren muß sich hier wohl über NavigateArrow behelfen.
HTH, Bernd
--
Option Explicit

Sub TestIt()
   ShowDependences Selection, True
End Sub

Sub ShowDependences(src As Range, TowardPrecedent As Boolean)
   Dim dst As Range, cell As Range
   Dim i As Integer, j As Integer
   Dim Done As Boolean, allDone As Boolean
   
   For Each cell In src
      If TowardPrecedent Then
         cell.ShowPrecedents
      Else
         cell.ShowDependents
      End If
      i = 1: j = 1: Done = False: allDone = False
      Do
         On Error Resume Next
         Set dst = cell.NavigateArrow(TowardPrecedent, i, j)
         Done = Err.Number <> 0
         On Error GoTo 0
         If Done Then
            j = 1
            i = i + 1
         Else
            If cell.Address = dst.Address And cell.Parent Is dst.Parent And cell.Parent.Parent Is dst.Parent.Parent Then
               allDone = True
            Else
               Debug.Print cell.Address, i, j, dst.Parent.Parent.Name, dst.Parent.Name, dst.Address
               j = j + 1
            End If
         End If
      Loop Until allDone = True
   Next cell
   src.Parent.ClearArrows
End Sub

Anzeige
AW: Liste aller Nachfolger
17.01.2006 14:54:12
Vliegen
Hallo Bernd,
Hab den Code mal probiert.
Bei mir zeigt er allerdings keine Nachfolger an. Debugfenster bleibt leer.
Lief der Code denn bei dir ?
Gruss,
Francois
AW: Liste aller Nachfolger
17.01.2006 15:36:46
bst
Hallo François,
Oops :-( Wenn mir meine eigene Paramter nix mehr sagen ...
Aus der VBA-Hilfe von NavigateArrow:
TowardPrecedent Variant optional. Gibt die Richtung der Bewegung an: True geht zu Vorgängerzellen und False zu Nachfolgerzellen.
Nimm also mal besser sowas:

Sub TestIt()
ShowDependences Selection, False
End Sub

HTH, Bernd
Danke klappt hervorragend
18.01.2006 09:41:48
Vliegen
Hallo Bernd,
Vielen Dank ! Mit False klappt die Sache prima.
Hast mir damit viel Arbeit erspart.
Gruss aus Belgien,
François
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige