Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
304to308
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
304to308
304to308
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Formeln in Worksheets suchen und auflisten

Formeln in Worksheets suchen und auflisten
05.09.2003 08:44:50
Torsten K.
Hallo beisammen,

ich habe vor ein paar Tagen ein Makro von xXx (Udo aus'm Pott) gefunden, welches tadellos läuft.
Dieses Makro listet alle Formeln mit der Adresse in einem separaten Blatt auf:


Sub Formeln_suchen()
n = ActiveSheet.Name
n2 = "Formeln_" & n
FIndex = False
z = 2
Set R1 = Range("a1", Range("a1").SpecialCells(xlLastCell))
For Each A In R1.Cells
If A.HasFormula Then
If FIndex = False Then
Worksheets.Add after:=Sheets(n)
ActiveSheet.Name = n2
Kopf = Array("Zelle", "Zeile", "Spalte", "Formel")
For t = 1 To 4
Cells(1, t) = Kopf(t - 1)
Cells(1, t).Font.Bold = True
Next t
FIndex = True
End If
Sheets(n2).Cells(z, 1) = A.Address(rowabsolute:=False, columnabsolute:=False)
Sheets(n2).Cells(z, 2) = A.Row
Sheets(n2).Cells(z, 3) = A.Column
Sheets(n2).Cells(z, 4) = "'" & A.Formula
z = z + 1
End If
Next A
Columns("A:D").EntireColumn.AutoFit
Range("A1").Select
End Sub

Ich würde nun gerne wissen, wie der Code angepasst werden muß, damit nur die Verknüpfungen gelistet werden, die einen externen Bezug, also zu anderen Dateien haben. Als VBA-Einsteiger bekomme ich das alleine nicht hin.
Wäre nett, wenn mir jemand helfen könnte.
Schönen Dank im voraus.

Gruß
Torsten

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formeln in Worksheets suchen und auflisten
05.09.2003 08:51:33
Bernd Held
Hallo torsten,

so sieht es m.E. nahc aus:

Sub Formeln_suchen()
    n = ActiveSheet.Name
    n2 = "Formeln_" & n
    FIndex = False
    z = 2
    Set R1 = Range("a1", Range("a1").SpecialCells(xlLastCell))
        For Each A In R1.Cells
            If A.HasFormula Then
               If InStr(A.Formula, "[") > 0 Then
                    If FIndex = False Then
                        Worksheets.Add after:=Sheets(n)
                        ActiveSheet.Name = n2
                        Kopf = Array("Zelle", "Zeile", "Spalte", "Formel")
                        For t = 1 To 4
                        Cells(1, t) = Kopf(t - 1)
                        Cells(1, t).Font.Bold = True
                        Next t
                        FIndex = True
                    End If
                Sheets(n2).Cells(z, 1) = A.Address(rowabsolute:=False, columnabsolute:=False)
                Sheets(n2).Cells(z, 2) = A.Row
                Sheets(n2).Cells(z, 3) = A.Column
                Sheets(n2).Cells(z, 4) = "'" & A.Formula
                z = z + 1
            End If
            End If
        Next A
        Columns("A:D").EntireColumn.AutoFit
        Range("A1").Select
End Sub
     Code eingefügt mit Syntaxhighlighter 1.14



Viele Grüße
Bernd
MVP für Microsoft Excel
Aktuelle VBA-Schulungen und VBA-Bücher unter: http://held-office.de

Anzeige
Läuft prima. Schönen Dank. Gruß TK (oT)
05.09.2003 09:41:07
Torsten K.
Was mache ich falsch??
07.09.2003 13:34:48
Erich M.
Hallo Bernd,

habe den Code in ein Modul kopiert -
leider läuft er nicht?
https://www.herber.de/bbs/user/908.xls

Besten Dank für eine Überprüfung.

mfg
Erich
AW: Was mache ich falsch??
07.09.2003 13:58:29
Martin Beck
Hallo Erich,

Du hast in Deiner Datei keine Formel mit einem Bezug auf eine andere Datei, aber nur solche Formeln sollen ausgelesen werden. Siehe Bedingung

If InStr(A.Formula, "[") > 0 Then

Gruß
Martin Beck
Danke - Martin; alles klar!! o.T.
07.09.2003 14:03:04
Erich M.
.

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige