Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
244to248
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
244to248
244to248
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VB: Schwerer Fehler

VB: Schwerer Fehler
23.04.2003 08:52:00
ToniS
Hallo!

Beim Speichern meiner xls.-Datei erscheint manchmal die Meldung
"Schwerer Fehler &H8000FFFF (-2147418113)". Man muss die Meldung 12x wegklicken, erst dann ist die Datei gespeichert. Kann mir jemand sagen, woher der Fehler kommt und wie man ihn vermeidet?


10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: VB: Schwerer Fehler
23.04.2003 09:34:57
Michael Scheffler

Hi,

bei mir kam so etwas kurz vorm PC-Crash. Ist eher etwas vom Betriebssystem oder hast Du Makros dabei?

Gruß

Micha

Re: VB: Schwerer Fehler
23.04.2003 09:50:38
ToniS

Hi!
Habe Makros dabei, auch ein UserForm.
Komischerweise kommt die Fehlermeldung nur, wenn das UserForm nicht aufgerufen wird.

Re: VB: Schwerer Fehler
23.04.2003 10:08:31
Michael Scheffler

Hi,

da wird wohl etwas durch die Fom intialisiert, oder Du hast ein Unload dabei?

Gruß

Micha


Re: VB: Schwerer Fehler
23.04.2003 10:14:00
ToniS

Hi,

das hab ich jetzt nicht ganz verstanden...
mein UserForm wird nur in bestimmten Fällen aufgerufen über .Show.
Falls das Makro durchläuft, ohne dass das UF aufgerufen wird gibt es am Ende die Probleme.

Anzeige
Re: VB: Schwerer Fehler
23.04.2003 10:16:14
Michael Scheffler

Hi,

dann poste mal den Code.

Gruß

Micha

Re: VB: Schwerer Fehler
23.04.2003 10:22:15
ToniS

Hi! Das steht in "Diese Arbeitsmappe":

Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

Anz = Worksheets.Count

For z = 1 To Anz
Worksheets(z).Activate
Prüfung 'Sub,welches Zellen auf falsche Eingaben prüft'
Next

Fehler = Worksheets(1).Range("S1") + Worksheets(2).Range("S1") + Worksheets(3).Range("S1") + Worksheets(4).Range("S1") + Worksheets(5).Range("S1") + Worksheets(6).Range("S1")
For z = 1 To Anz
Worksheets(z).Activate
ActiveSheet.Range("S1").ClearContents
Next
MsgBox ("Prüfung beendet: " & Fehler & " Korrektur(en) .")


End Sub


Hier noch was im Modul steht:


Sub Prüfung()

k = 0
'Aktives Tabellenblatt wird ermittelt
Aktiv = ActiveSheet.Name

'****************************************************************************
'Beginn der Prüfung
For i = 2 To 1000

FalscheZelle = "Nein"

'Auslesen des Zelleninhalts
Set Inhalt = Worksheets(Aktiv).Cells(i, 2)

If Inhalt <> "" Then

'Anzahl an Stellen wird ermittelt
AnzahlZeichen = Len(Inhalt)

'Schreiben der einzelnen Stellen in Zellen als Zwischenablage
For j = 1 To AnzahlZeichen
Worksheets(Aktiv).Cells(j, 14) = Mid(Inhalt, j, 1)
Next

'Bezeichnen der einzelnen Stellen
Set St1 = Worksheets(Aktiv).Cells(1, 14)
Set St2 = Worksheets(Aktiv).Cells(2, 14)
Set St3 = Worksheets(Aktiv).Cells(3, 14)
Set St4 = Worksheets(Aktiv).Cells(4, 14)
Set St5 = Worksheets(Aktiv).Cells(5, 14)
Set St6 = Worksheets(Aktiv).Cells(6, 14)
Set St7 = Worksheets(Aktiv).Cells(7, 14)
Set St8 = Worksheets(Aktiv).Cells(8, 14)
Set St9 = Worksheets(Aktiv).Cells(9, 14)
Set St10 = Worksheets(Aktiv).Cells(10, 14)
Set St11 = Worksheets(Aktiv).Cells(11, 14)
Set St12 = Worksheets(Aktiv).Cells(12, 14)
Set St13 = Worksheets(Aktiv).Cells(13, 14)
Set St14 = Worksheets(Aktiv).Cells(14, 14)
Set St15 = Worksheets(Aktiv).Cells(15, 14)


If St1 <> "A" Then
FalscheZelle = "Ja"
ElseIf St2 <> " " Then FalscheZelle = "Ja"
ElseIf St3.Value = " " Then FalscheZelle = "Ja"
ElseIf St4.Value = " " Then FalscheZelle = "Ja"
ElseIf St5.Value = " " Then FalscheZelle = "Ja"
ElseIf St6 <> " " Then FalscheZelle = "Ja"
ElseIf St7.Value = " " Then FalscheZelle = "Ja"
ElseIf St8.Value = " " Then FalscheZelle = "Ja"
ElseIf St9.Value = " " Then FalscheZelle = "Ja"
ElseIf St10 <> " " Then FalscheZelle = "Ja"
ElseIf St11.Value = " " Then FalscheZelle = "Ja"
ElseIf St12.Value = " " Then FalscheZelle = "Ja"
ElseIf St13 <> " " Then FalscheZelle = "Ja"
ElseIf St14.Value = " " Then FalscheZelle = "Ja"
ElseIf St15.Value = " " Then FalscheZelle = "Ja"
ElseIf AnzahlZeichen > 15 Then FalscheZelle = "Ja"
End If

If FalscheZelle = "Ja" Then

'Schreiben von Text, Adresse und und Name des Tabellenblatts in Zwischenablage
InhaltAdd = Mid(Inhalt.Address, 2, 1) & Mid(Inhalt.Address, 4, 4)

Worksheets(Aktiv).Range("O1") = ActiveSheet.Name
Worksheets(Aktiv).Range("P1") = InhaltAdd
Worksheets(Aktiv).Range("Q1") = Inhalt
Worksheets(Aktiv).Range("R1") = Inhalt.Address

'Schreiben in TextBox 1-3
UserForm1.TextBox1 = ActiveSheet.Range("Q1")
UserForm1.TextBox2 = ActiveSheet.Range("O1")
UserForm1.TextBox3 = ActiveSheet.Range("P1")

'Einblenden der UserForm
UserForm1.Show

FalscheZellen = "Ja"
k = k + 1
i = i - 1

End If



End If

Next

'Löschen der Einträge in Spalte 14
For j = 1 To 16
Worksheets(Aktiv).Cells(j, 14).Clear
Next
'Schreiben der Anzahl an Änderungen in Zelle als Zwischenablage
Worksheets(Aktiv).Range("S1") = k

End Sub




Anzeige
Re: VB: Schwerer Fehler
23.04.2003 10:46:09
Michqel Scheffer

Was sollen diese Anweisungen?

Set St1 ?

Da kommen garantiert die Fehler her.

Re: VB: Schwerer Fehler
23.04.2003 11:14:50
ToniS

Hi,

damit wird den Inhalten der Zellen jeweils eine Bezeichnung zugewiesen. Dort läuft das Programm auch einwandfrei,
Probleme treten nur auf, wenn keine "Falsche Zelle" gefunden wird.

Re: VB: Schwerer Fehler
23.04.2003 11:35:45
ToniS

Hi, habe noch entdeckt, dass der Fehler nur auftritt,
wenn unter Speichern die Option "Microsoft Excel97 & ab 5.0/95-Arbeitsmappe (.xls)" ausgewählt ist. Beim Speichern unter 5.0 treten dann erst die Probleme auf.

Re: VB: Schwerer Fehler
23.04.2003 12:45:28
Michael Scheffler

Hi,

wo sit der Sinn, einer Zelle eine Bezeichnung zuzuschreiben?

Gruß

Micha

PS: 5.0 kennt keine Formulare.

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige