Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1104to1108
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sheet-Name auslesen, wenn er geändert wurde

Sheet-Name auslesen, wenn er geändert wurde
Micha.hal
Hallo Excelperten,
ich habe für ein Tabellenblatt X im Private Sub "Worksheet_Activate" definiert, dass eine Zelle im nächsten Tabellenblatt Y abgeprüft wird. Soweit OK.
Nun werden diese Tabellenblätter jedoch in eine andere Mappe kopiert und dort gesammelt. Da ich diese Tabellenblätter in die neue Mappe mehrfach hinein kopiere, musste ich die Tabellenblätter jeweils umbenennen. Somit heißt Y jetzt Y1, Y2,... Im jeweiligen "Worksheet_Activate" der Blätter X1, X2, ... steht aber weiterhn der Verweis auf Y, das es nun nicht mehr gibt.
Kann man beim Kopieren der Tabellenblätter die "Worksheet_Activate" löschen (brauche sie nach dem Kopieren nicht mehr) oder wie bekomme ich es hin, dass in jedem "Worksheet_Activate" nicht mehr der Blattname Y, sondern Y1, Y2, ... geprüft wird?
Micha

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

Betreff
Benutzer
Anzeige
AW: Sheet-Name auslesen, wenn er geändert wurde
30.09.2009 19:11:48
Adelhorst
Hallo Micha.
Füge ein in einem Modul der Original-Arbeitsmappe folgende Funktion ein:
Public Function Sammelmappe() As Boolean
Sammelmappe = False
End Function
In einem Modul der Sammel-Arbeitsmappe (wo du die Blätter hineinkopierst) fügst folgende Funktion ein:
Public Function Sammelmappe() As Boolean
Sammelmappe = True
End Function

Nun kannst du im Worksheet_Activate die Ausführung der Überprüfung nur bedingt ausführen lassen.
Private Sub Worksheet_Activate()
If Sammelmappe = false Then Ueberpruefung
End Sub
Somit findet die Überprüfung nur in der Originaldatei statt.
Hoffe ich konnte dir helfen.
Gruß Adelhorst
Anzeige
AW: Sheet-Name auslesen, wenn er geändert wurde
01.10.2009 08:21:03
Micha.hal
Hallo Adelhorst,
da ich aber die Sheets aus der Originaldatei in eine noch nicht vorhandene Datei verschiebe, kann ich schlecht in diese Datei eine Function schreiben (oder ich weiß nicht wie). Aber ich habe eine Lösung gefunden. Ich suche in der Datei nach einem bestimmten Sheet-Namen, und nur wenn der gefunden wird, handelt es sich um die Originaldatei und nur dann soll das Makro ausgeführt werden:
Private Sub Worksheet_Activate()
blattname = "Y"
For i = 1 To Sheets.Count
If blattname = Sheets(i).Name Then
If Worksheets("Y")'Abfrage Then
'Aktion
End If
Exit For
End If
Next i
End Sub
Danke trotzdem für die hilfreiche Unterstützung.
Micha
Anzeige
AW: Sheet-Name auslesen, wenn er geändert wurde
01.10.2009 09:28:45
Adelhorst
Hallo Micha.
Ja so geht das natürlich auch.
Nur noch ein kleiner Hinweis:
Zu Sheets gehören auch Diagramme. D.h. wenn du alle Sheets nach dem Namen durchsuchst und sehr viele Diagramme im Workbook hast, dann kannst du Zeit sparen, indem du mit Worksheets arbeitest und somit tatsächlich nur die Tabellenblattnamen durchsuchst, so wie im folgenden Beispiel:
Private Sub Worksheet_Activate()
Dim wsh As Worksheet, blattname As String
blattname = "Y"
For Each wsh In Worksheets
If wsh.Name = blattname Then
If wsh.Range("A1") = 1 Then 'Deine Kontrollabfrage
'Aktion
End If
Exit For
End If
Next wsh
End Sub

Gruß Adelhorst
Anzeige
AW: Sheet-Name auslesen, wenn er geändert wurde
01.10.2009 10:15:39
Micha.hal
Guter Tipp, dankeschön.
Micha

307 Forumthreads zu ähnlichen Themen


Hallo liebes Forum,
gibt es eine Möglichkeit aus einer Zelle nur die Zahlen auszulesen, siehe Beispiel:
'123456 BLA --> 123456
Ist eine Excel-interne (keine VBA-Programmierung) hier möglich?
Vielen Dank für die Unterstützung!
Timo
Anzeige

Hallo zusammen,
ich möchte ein Arbeitsblatt auf das vorher gehende Arbeitsblatt referenzieren!
Meine Datei ist folgendermaßen Strukturiert:
Arbeitsblatt 1 : Tabelle A
Arbeitsblatt 2 : Tabelle A+ Adressen
Arbeitsblatt 3 : Tabelle B
Arbeitsblatt 4 : Tabelle B+ Adressen

Hallo,
ich habe mir eine Tabellenblatt als Vorlage erarbeitet und dieser Tabelle auch den Namen Vorlage gegeben.
Mit einem Makro kann ich nun über die zugewiesene Tastenkombination diese Tabelle an das Ende der Arbeitsmappe kopieren. Dabei fragt das Makro nach dem Tabellenblattnamen. Di...
Anzeige

Hallo,
ich habe gleich zwei Fragen:
1) Nach anklicken einer Checkbox soll diese Ihren Namen in Zelle A1 schreiben.
z.B. CheckBox12 Wie geht das?
2) Nach dem anklicken der Box hat diese ein Häckchen.
Dieser soll nach dem Anklicken gleich wieder verschwinden.
Wer kan...

Guten tag,
ich habe mehrere Arbeitsblätter.
TAB1; TAB2; TAB3;
Ich möchte auf dem ersten Arbeitsblatt den Register/Arbeitsblattnamen in eine Zelle schreiben/verweisen.
Gibt es hier eine einfache Möglichkeit?

Hallo,
mit folgendem Code lege ich ein neues Sheet an
ich möchte das der Namen des neuen Sheets auch in Zelle A2 eingetragen wird.
Nur wie?
Könnte mir bitte jemand weiterhelfen.
Private Sub ComboBox6_Change() End Sub
Private Sub CommandButton1_Click() Application.Sc...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige