Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1236to1240
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

Blöde Frage, aber dennoch interessiert es mich...

Blöde Frage, aber dennoch interessiert es mich...
KLE
...gibt es eine Möglichkeit, in einem VBA Projekt mit verschiedenen Userformen, welche auf einander sich aufbauen und Beziehungen zu einander hegen, sowas wie ein Master-Fehler-Abwang-System einzubauen?
Problem:
Ich habe eine Excel-Datei mit ca. 25 Daten-Blättern sowie eine Hauptuserform, in der die Daten verwaltet werden. Der User kommt nicht an die Blätter, sondern nur an die Userform und je nach Recht (Anmeldung) kann er verschiedene Funktionen ausführen oder eben nicht.
Aus der Hauptuserform können je nach Bedarf auf ca. 12 kleinere Userformen zurückgegriffen werden. Eininge dienen nur der Ansicht von Tabellen und Diagrammen (Reporting-Tool), einige wiederum dienen der Bearbeitung von Daten (Rechte-Verwaltung, Personal-Liste, Listenfelder etc.) ... und andere enthalten einen Browser zur Websiten, bzw. Grafiken-Ansicht.
Alles läuft so weit ziemlich gut und stabil. ABER:
Hin und wieder kommt es bei dem einen oder anderen User zu einem "Debugg"-Problem. Der oftmals mit einem neuen Starten des Tools behoben werden kann...und dann nicht mehr auftaucht?!?
Oder aber auch, wenn z.B. unterschiedliche Systeme genutzt werden - wie Office2007 / 2003 und 2010 auf WinXP, WinVIsta oder Win7 Rechnern mit 32 oder 64Bit-Systemen. Manchmal aber auch, weil während einer aktiven Session, der USer eine andere Mappe öffnet und diese dann (obwohl im Code steht, dass sobald ide Userform aktiv ist, auch die dazugehörige Datei aktiv sein soll) das Tool vor ein Problem stellt, da es in der nicht die Daten mehr findet...
Lange Rede, kurzer Sinn - aufgrund der vielen Kombinationen aus Software und Hardware-Konfigurationen kommte es vereinzelt zu einem "Programm-Fehler". Da nicht jeder User wirklich "fit" ist, hätte ich gern folgenden Traum realisiert:
Ein Code, irgendwo in der Datei - der mit dem Laden der Datei aktiv ist, bis die Datei wieder geschlossen ist. Dieser COde erkennt alle "Fehlermeldungen" und protokolliert diese in ein Blatt:
z.B.: User X, hat einen Fehler an der Stelle Y verursacht am, um ...dann die Codezeile und der Inhalt der Fehlermeldung + was ggf. der fehler war. D.h. das zum Beispiel die Werte mit übertragen werden, wenn ein Falscher oder Fehlender Wert hätte übergeben werden sollen etc.
Ich vermute, es wir sowas nicht geben. Und ich muss innerhalb des Tools an 100ten von Stellen einen idividuelle "Abfang-Code" schreiben...oder ?!?
Gruß und Danke!
Kay

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

Betreff
Benutzer
Anzeige
AW: Blöde Frage, aber dennoch interessiert es mich...
29.11.2011 15:28:22
gerwas
HAllo
schaust du unter dem Thema "On Error"...
dann könnte man eine Datei offen halten, in die die On Error's geschrieben werden...
mfg Gerwas
AW: Blöde Frage, aber dennoch interessiert es mich...
29.11.2011 15:42:14
gerwas
HAllo nochmal
könnte so aussehen:
Sub xx()
zz = FreeFile
Open "C:\fehler.txt" For Output As #zz
On Error GoTo melde_fehler
Dein Code
Close #zz
Exit Sub
melde_fehler:
Print #zz, Environ("username"), Error(Err.Number)
Resume
End Sub

AW: Blöde Frage, aber dennoch interessiert es mich...
29.11.2011 15:49:28
Rudi
Hallo,
und diese dann (obwohl im Code steht, dass sobald ide Userform aktiv ist, auch die dazugehörige Datei aktiv sein soll) das Tool vor ein Problem stellt, da es in der nicht die Daten mehr findet...
das liegt aber an deiner Referenzierung.
Wenn du deinen Datenblättern eindeutige Codenamen verpasst (z.B. meinTool_PersListe) und sie mit diesen ansprichst, sparst du dir 1. das Setzen von Objektvariablen und hast 2. nicht das Datenproblem.
Die Codezeile heraus zu finden, in der ein Fehler verursacht wurde, ist fast unmöglich.
Gruß
Rudi
Anzeige
AW: Blöde Frage, aber dennoch interessiert es mich...
30.11.2011 16:27:38
Nepumuk
Hallo Rudi,
Die Codezeile heraus zu finden, in der ein Fehler verursacht wurde, ist fast unmöglich.
Kennst du die Funktion Erl nicht?
Gruß
Nepumuk
Erl
30.11.2011 19:43:19
Rudi
Hallo,
doch, schon mal von gehört.
Allerdings muss er dem Code dann ja Zeilennummern verpassen (wofür du, soviel ich weiß, auch mal ein Tool geschrieben hast).
Gruß
Rudi

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige