Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1516to1520
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

nicht benötigte Variablen finden

nicht benötigte Variablen finden
30.09.2016 15:35:21
Sven
Hallo zusammen,
mein Code ist immer länger geworden. Es werden viele Variablen Dimensioniert. Allerdings habe ich durch mehrere Code-Anpassungen etwas den Überblick darüber verloren, welche Variable ich brauche und welche nicht mehr.
Meine Frage: Kann ich eine Prüfung über den Code laufen lassen die mir (z. B. in einer Msgbox) auflistet, welche der Variablen nicht benötigt wurden?
Schon mal Danke & Gruß, Sven

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

Betreff
Datum
Anwender
Anzeige
AW: nicht benötigte Variablen finden
30.09.2016 15:53:21
ChrisL
Hi Sven
Ich will nicht ausschliessen, dass es irgend ein externes Tool gibt, welches den Code analysieren könnte. Aber du kannst doch einfach mal manuell mit Ctrl+F, ganzes Projekt, nach den Variablennamen suchen. Zwar mühsam aber hunderte von Variablen werden es hoffentlich nicht sein.
cu
Chris
AW: nicht benötigte Variablen finden
30.09.2016 18:00:52
Sven
Hallo Chris,
danke für deinen Vorschlag. Aber es ist nicht die Lösung, die ich suche. Ich stelle es mir ungefähr so vor. Wenn der Code durchlaufen wurde soll eine msgbox erscheinen mit ungefähren Inhalt:
Folgende Variablen kamen nicht zur Anwendung: strXXX, intYYY und intZZZ
Gruß, Sven
Anzeige
Vorschlag
30.09.2016 19:33:08
Michael
Hi,
ich habe das Problem leider auch, aber es war mich nicht wichtig genug, mich darum zu kümmern.
Der Vorschlag besteht darin, die zu untersuchenden Subs usw. einfach über die Zwischenablage in ein leeres Blatt zu kopieren und das Makro drüber laufen zu lassen:
Option Explicit
Sub variablennamen()
Dim i, j, k, lngxxx, lngyyy, strUUU
Dim o As Object, oi, c As Range
Const ohne = ",=&$#+-*/ " ' nach Bedarf erweitern
Dim a, ai&, s$, r&
Range("H:I").Clear  ' damit die vorhergehenden Ergebnisse weg sind
Set o = CreateObject("scripting.dictionary")
For Each c In UsedRange
s = Replace(c.Text, "(", " ")
s = Replace(s, ")", " ")
a = Split(s, " ")
If ai  -1 Then
For ai = LBound(a) To UBound(a)
s = Trim(LTrim(a(ai)))
For r = 1 To Len(ohne): s = Replace(s, Mid(ohne, r, 1), ""): Next
If Mid(s, 1, 1) = "'" Then Exit For ' ohne Kommentare
o(s) = o(s) + 1
Next
End If
Next
r = 1
For Each oi In o.keys
Range("H" & r) = oi
Range("I" & r) = o(oi)
r = r + 1
Next
End Sub
Die Ausgabe kann man ja noch sortieren usw., aber der Punkt ist: alles, was = 1 ist, kommt nur einmal vor.
Schöne Grüße,
Michael
Anzeige
AW: Vorschlag
03.10.2016 01:47:17
Piet
Hallo
anbei eine Beispieldatei die ich mal für mich selbst entwickelt hatte um Makros aufzulisten.
Der Pfad und ein Dateiname muss angegeben werden, dann wird diese Datei/en komplett ausgelesen.
Alle Makros werden aufgelistet, einmal untereinanderi und einmal nebeneinander.
Will man Variable prüfen muss man noch ein Makro schreiben um den Text zu durchsuchen.
mfg Piet
https://www.herber.de/bbs/user/108554.xls
AW: Vorschlag
03.10.2016 13:40:56
Sven
Hi Piet,
danke für das Makro. Werde demnächst mal versuchen, es für meine Zwecke umzubauen.
Gruß, Sven
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige