Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
240to244
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
240to244
240to244
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Workbook_sheetchange?

Workbook_sheetchange?
08.04.2003 17:29:04
Ol@f
Hallo XL-Forum,

ich als Visual Basic-Anfänger hab mir mal folgendes Protokollmakro geschrieben. Problem: Wie kann ich den Tabellenblattnamen, des veränderten Tabellenblattes auslesen?

Private Sub Workbook_Sheetchange(ByVal TB As Object, ByVal Source As Range)

a = Source.Row
b = Source.Column
c = Application.UserName
d = Source.Value
e = Format(Now, "dd.mm.yyyy")
f = Format(Now, "HH:MM")
g = ActiveWorkbook.Name
h = ActiveSheet.Name

Open "q:\Protokoll\Zeza-zugriffe.txt" For Append As #1
Print #1, "User: " & c & vbTab & "am: " & e & vbTab _
& "um: " & f & vbTab & "geänderte Spalte: " & b _
& ";~ Zeile:" & a & vbTab & "neuer Wert: " & d & vbTab & "in: " & g & h
Close #1

End Sub

"h" liefert mir leider nicht den erhofften Namen, sondern an der Stelle wird abgebrochen...warum?
Danke für Inspirationen


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

Betreff
Datum
Anwender
Anzeige
Re: Workbook_sheetchange?
08.04.2003 17:53:39
ChrisL

Hallo Ol@f

Ich denke es liegt daran, dass du dich in einem Workbook statt Worksheet Ereignis befindest.

Hab es zwar nicht getestet, aber ich denke, wenn du dein Makro in ein Modul setzt und in allen Tabellen über...

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Call Makro
End Sub


das Makro aufrufst müsste es gehen.

Gruss
Chris

Re: Workbook_sheetchange?
08.04.2003 18:05:52
Ol@f

Hallo ChrisL,
danke für den Tipp.
Aber genau das wollte ich mir doch ersparen, daß ich für jedes Tabellenblatt ein Makro anlegen muß. Dachte das würde mit "workbook_sheetchange" so komfortabel gehen!?



Anzeige
noch offen
08.04.2003 20:15:03
ChrisL

Hallo Ol@f

Habe jetzt mal mit Excel 2000 folgendes probiert.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
MsgBox ActiveSheet.Name
End Sub

Und es hat funktioniert. Bin deshalb unsicher, ob es mit der Version zusammenhängt oder ob der Bug sonstwo begraben ist.

In diesem Beitrag wurde mal etwas ähnliches behandelt und von Bernd sehr gut erklärt:
http://www.excel-center.de/forum/read.php?f=1&i=32566&t=32509
Dachte es sei das gleiche Problem. Jedenfalls ist das darin beschriebene Problem mit dem Blattbezug in Excel 2000 ebenfalls behoben.

Eine Zweitmeinung wäre intessant.

Gruss
Chris

Anzeige
Re: Workbook_sheetchange?
08.04.2003 21:10:22
PeterW

Hallo Olaf,

kann es nicht unter Version 8 testen aber probier mal:
h = TB.Name

Gruß
Peter

Re: noch offen
09.04.2003 01:44:16
moe

Ich glaube du must erst eine Zelle Aktievieren hatte mal ein ähnliches Problem

Private Sub Workbook_Sheetchange(ByVal TB As Object, ByVal Source As Range)
range("a1").activate
a = Source.Row
b = Source.Column
c = Application.UserName
d = Source.Value
e = Format(Now, "dd.mm.yyyy")
f = Format(Now, "HH:MM")
g = ActiveWorkbook.Name
h = ActiveSheet.Name

Open "q:\Protokoll\Zeza-zugriffe.txt" For Append As #1
Print #1, "User: " & c & vbTab & "am: " & e & vbTab _
& "um: " & f & vbTab & "geänderte Spalte: " & b _
& ";~ Zeile:" & a & vbTab & "neuer Wert: " & d & vbTab & "in: " & g & h
Close #1

End Sub

Anzeige

104 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige