Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
820to824
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
820to824
820to824
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Name des Tabellenblatts ändern

Name des Tabellenblatts ändern
16.11.2006 14:00:01
Rupp
Hallo alle zusammen!
Ich habe wieder ein Problem und zwar soll es in meiner Arbeitsmappe, wenn ich einen Tabellenblatt umbenenne, ein Ereignis ausgelöst werden welches dann ein von mir erstelltes Makro auslöst. Hat jemand vielleicht eine Lösung?
Gruß

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

Betreff
Datum
Anwender
Anzeige
AW: Name des Tabellenblatts ändern
16.11.2006 14:29:24
Rudi
Hallo,
das Umbenennen eines Sheets löst kein Ereignis aus.
Das kannst du auch nicht ändern.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
Doch, das geht...
16.11.2006 15:13:53
{Boris}
Hi Rudi,
das Calculate-Ereignis wird ausgelöst. Voraussetzung: Irgendwo in der Mappe tummelt sich eine flüchtige Funktion (HEUTE(), ZUFALLSZAHL(), JEZT() etc.). Also irgendwo eine davon dummymäßig hinterlegen.
Grüße Boris
AW: Doch, das geht...
16.11.2006 15:54:40
Rudi
Hallo Boris,
danke für den Hinweis.
Aber wie willst du abfragen, ob das Calculate durch die Änderung des Tabellennamens ausgelöst wurde und nicht durch irgendeine Berechnung?
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
Anzeige
AW: Doch, das geht...
16.11.2006 21:47:46
{Boris}
Hi Rudi Maintaire,
leider habe ich diesbezüglich nur rudimaintaire Kenntnisse - aber prinzipiell - als ganz grober Ansatz - so:
In einem allgemeinen Modul deklarieren:
Public tabArray As Variant
Dann im Modul "DieseArbeitsmappe":
Option Explicit

Private Sub Workbook_Open()
tabArray = Array("Tabelle1", "Tabelle2", "Tabelle3") 'Die Originalnamen der Blätter
End Sub


Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Dim i As Integer
On Error Resume Next
For i = 1 To Sheets.Count
If WorksheetFunction.Match(Sheets(i).Name, tabArray, 0) = 0 Then
If Err.Number <> 0 Then
MsgBox "Tabellennamen wurde geändert!", , "Gebe bekannt..."
Err.Clear
Exit Sub
End If
End If
Next i
End Sub

Und nicht vergessen - irgendwo eine flüchtige Dummyfunktion hinterlegen.
Grüße Boris
Anzeige
AW: Doch, das geht...
17.11.2006 09:24:53
Rudi
Hallo Boris,
ok. Ist zwar ne Krücke, geht aber. Und dann nur noch das Array aktualisieren und die Workbook_open neu schreiben, damit beim nächsten Öffnen das Array stimmt.
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige