Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1904to1908
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

Code funktioniert in anderen Dat. nicht

Code funktioniert in anderen Dat. nicht
14.11.2022 19:25:11
Stefan
Hallo zusammen,
der nachfolgende Code funktioniert. (ist hier im Forum entstanden).
Der Code ist im großen und ganzen eine Protokollierung.
Wenn ich den Code in andere Dateien kopiere (Diese Arbeitsmappe) funktioniert er und in einer anderen Datei funktioniert er nicht.
Funkioniert nicht heisst: es wird nichts protokolliert.
Ich kann es an nichts festmachen. Die Dateien sind alle gleich aufgebaut. Haben die gleichen Tabellenbezeichnungen. Haben alle die gleichen Namen definiert. usw...
Vielleicht hat jemand eine Idee dazu.
Vorab vielen Dank
Gruß
Stefan
Der Code:
Dim AlterWert

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
AlterWert = Target.Value
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name = "Protokoll" Then Exit Sub
If Sh.Name = "PT" Then Exit Sub
Application.EnableEvents = False
If Not Intersect(Target, Sh.Range("A1:DD1000")) Is Nothing Then
If Target.Cells.CountLarge > 1 Then
Application.Undo
MsgBox "Es darf nur eine Zelle geändert werden."
Else
protokolliere Sh.Name, Target.Address(0, 0), Target.Value, AlterWert, Target.EntireRow.Cells([DplKltxt].Column)
End If
End If
Application.EnableEvents = True
End Sub

Private Sub protokolliere(Blatt, Zelle, NeuerWert, AlterWert, Optional Sonstiges = "")
Dim AppEE As Boolean
AppEE = Application.EnableEvents
Application.EnableEvents = False
With Sheets("Protokoll").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).EntireRow
.Cells(1) = Blatt
.Cells(2) = Zelle
.Cells(3) = NeuerWert
.Cells(4) = AlterWert
.Cells(5) = Date
.Cells(6) = Time
.Cells(7) = Environ("username")
.Cells(8) = Sonstiges
End With
Application.EnableEvents = AppEE
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code funktioniert in anderen Dat. nicht
14.11.2022 19:38:14
onur
und was soll DplKltxt sein?
AW: Code funktioniert in anderen Dat. nicht
14.11.2022 20:42:53
Stefan
Das "soll" eine Spaltenbezeichnung sein.
Die funktioniert und ist in dieser Datei auch vergeben.
AW: Code funktioniert in anderen Dat. nicht
15.11.2022 10:19:01
Herbert_Grom
Hallo Stefan,
gleich ist eben doch nicht gleich! Ohne Beispiel-AM werden wir dir nicht helfen können. Am Besten 2 AM, eine, in der es funktioniert und die, in der nicht.
Servus
AW: Code funktioniert in anderen Dat. nicht
18.11.2022 21:10:05
Stefan
Hallo zusammen.
Ich kann diese Dateien nicht hochladen ohne den Inhalt komplett raus zu löschen. (Firmendaten)
Ich habe es aber mittlerweile rausgefunden. Wenn auch nur zufällig.
Die Arbeitsmappe wurde im VBA- Editor im Projektverzeichnis zweimal angezeigt. Ich weiß zwar nicht unter welchen Bedinungen sowas zustande kommt aber wenn die Arbeitsmappe einmal angezeigt wird (so wie das für mein Verständnis sein soll) dann funktionierts.
Mich würde allerdings der Grund dafür interessieren.
Vielen Dank an alle die sich der Sache angenommen haben.
Gruß
Stefan
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige