Könnte mal jemand über mein Makro schauen?

Bild

Betrifft: Könnte mal jemand über mein Makro schauen?
von: Scotty
Geschrieben am: 18.11.2003 15:15:55

Möchte Änderungen aus einer Excel-Tab protokollieren. Habe dazu folgendes Makro:

Quelldatei und Protokolldatei stehen in einer Arbeitsmappe.

Option Explicit
Public InhaltAlt, ZeilProt

'Die beiden ersten stehen in der Quelldatei in der geändert wird
'bei Ansteuerung einer Zelle wird deren Wert in InhaltAlt gespeichert


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
InhaltAlt = Target.Value
End Sub


'hier wird der Rest erledigt und in eine Tabelle Protokoll geschrieben

Private Sub worksheet_change(ByVal Target As Range)
Dim ZeileText, SpalteText, InhaltNeu, Benutzer As String, DatZeit
InhaltNeu = Target.Value
ZeileText = Cells(Target.Row, 1)
SpalteText = Cells(1, Target.Column)
Benutzer = UserName()
DatZeit = Date + Time
Worksheets("Protokoll").Cells(ZeilProt, 1).Value = ZeileText
Worksheets("Protokoll").Cells(ZeilProt, 4).Value = SpalteText
Worksheets("Protokoll").Cells(ZeilProt, 5).Value = InhaltAlt
Worksheets("Protokoll").Cells(ZeilProt, 6).Value = InhaltNeu
Worksheets("Protokoll").Cells(ZeilProt, 7).Value = Benutzer
Worksheets("Protokoll").Cells(ZeilProt, 8).Value = DatZeit
ZeilProt = ZeilProt + 1
End Sub


'Diese steht im Modulblatt der Arbeitsmappe
'damit wird die akt Zeilenzahl in Protokoll festgestellt
Sub auto_open()
ZeilProt = Worksheets("Protokoll").Range("A1").CurrentRegion.Rows.Count + 1
End Sub


Zum einen meckert er bei der Zeile "Benutzer = UserName()" Meldung:Function nicht deklariert. Habe das auf "Benutzer = Application.UserName geändert. Es wird nicht mehr gemeckert, nur bei der Zeile "Worksheets("Protokoll").Cells(ZeilProt, 1).Value = ZeileText" bleibt das Makro mit der Meldung: Anwendungs- oder objektdefinierter Fehler stehen.

Was mache ich falsch??

Danke für eure Hilfe
Scotty
Bild


Betrifft: AW: Könnte mal jemand über mein Makro schauen?
von: Nayus
Geschrieben am: 18.11.2003 16:29:29

Hi,
habe Deinen Code mit der Änderung bzgl. des Usernamens ausgeführt.
Bei mir funktioniert es.
Hast Du vielleicht nicht die Mappe als erstes einmal geschlossen?

Gruß,
Nayus


Bild


Betrifft: Wieso funktioniert das bei dir?
von: Scotty
Geschrieben am: 19.11.2003 06:49:25

Hi,

wenn ich irgendeine Änderung vornehme, erscheint eine Meldung Laufzeitfehler 1004, Anwendungs- oder objektdefinierter Fehler. Woran liegt das nur? Bin mit mein Latein am Ende! Hast du vielleicht ne Idee??

Danke dir
Scotty


Bild

Beiträge aus den Excel-Beispielen zum Thema " UserForm-Elemente"