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

Markierung für mehrere Tabellenblätter aufheben

Markierung für mehrere Tabellenblätter aufheben
22.05.2014 19:37:51
Chrissi

Hallo liebes Forum,
ich habe einen Makro, als Ergebnis sind alle Tabellen markiert. Am Ende des Makros möchte ich gerne die Markierung für alle Tabellenblätter aufheben.
Kann ich Application.Goto Reference:=Thisworkbook.worksheets.Range("A1") verwenden?
Liebe Grüße
Chrissi

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Markierung für mehrere Tabellenblätter aufheben
22.05.2014 19:41:07
Hajo_Zi
wenn Du eine Worksheets angibst, ja.

AW: Markierung für mehrere Tabellenblätter aufheben
22.05.2014 20:52:02
Chrissi
Hallo Hajo,
ich verstehe leider deine Antwort nicht.
Liebe Grüße
Chrissi

Markierung für mehrere Tabellenblätter aufheben
22.05.2014 20:56:57
Hajo_Zi
du hast nur Worksheet geschrieben, das ist kein bestimmtes, es fehlt(1)
Gruß Hajo

AW: Markierung für mehrere Tabellenblätter aufheben
22.05.2014 20:52:44
Daniel
HI
probiers doch aus, dann siehst du was passiert!
so wie du die Frage gestellt hast, lautet die Antwort NEIN, geht nicht.
In einer Excelmappe muss immer mindestes ein Tabellenblatt markiert und aktiv sein, von daher geht "Markierung für alle Tabellenblätter aufheben" nicht.
Gruß Daniel

Anzeige
AW: Markierung für mehrere Tabellenblätter aufheben
22.05.2014 21:09:54
Chrissi
Hallo Daniel,
habe mit dem Makrorekorder folgenden Code:
Sheets(Array("Tabelle1", "Tabelle2", "Tabelle3")).Select
Sheets("Tabelle1").Activate
Range("A1").Select
Muss ja leider jedes Tabellenblatt einzelnen nennen. Habe mal Activate versucht, erhalte aber leider einen Fehler (Kompilieren).
Application.Goto Reference:=Thisworkbook.worksheets.activate
Range("A1").select
Woran liegt das denn?
Liebe Grüße
Chrissi

einfach Worksheets("Tabelle1").Activate
22.05.2014 21:13:42
Matthias L
Hallo
Mit
Thisworkbook.worksheets.Activate

weiß doch Excel nicht welches Blatt aktiviert werden soll
Gruß Matthias

Anzeige
AW: einfach Worksheets("Tabelle1").Activate
22.05.2014 21:18:56
Chrissi
Hallo Matthias,
es sollen alle Tabellenblätter angesprochen oder aktiviert werden. Nicht nur Tabelle 1
Liebe Grüße
Chrissi

falsch verstanden
22.05.2014 21:24:11
Matthias L
Hallo
Da habe ich Dich falsch verstanden, sorry.
Ich dachte Du wolltest die Gruppierung der markierten Blätter wieder aufheben und Tabelle1 markieren.
Gruß Matthias

ThisWorkbook.Sheets.Select ... owT
22.05.2014 21:28:54
Matthias L

AW: einfach Worksheets("Tabelle1").Activate
22.05.2014 22:22:36
Daniel
mit Application.Goto springst du immer zu einer bestimmten Zelle.
das kann auch nicht funktionieren, weil eine VBA-Befehlszeile immer nur EINEN Befehl ausführen kann.
du versuchst hier zwei Befehle (GOTO und ACITVATE) in einer Befehlszeile unterzubringen und das geht nicht!
vielleicht noch man grundsätzlichen zum Selektiern und Aktivieren von Tabellenblättern:
1. es gibt in einer Mappe immer genau ein aktives Tabellenblatt, dh es muss immer mindestes eines aktiv sein und es können aber auch nicht mehrere aktiv sein.
mit dem Befehl: Sheets(...).Activate aktiviert man ein bestimmtes Tabellenblatt, das zuvor aktive Tabellenblatt wird deaktiviert
2. neben dem aktiven Tabellenblatt gibt es auch das oder die selektierten Blätter. Es muss in einer Mappe immer mindestesn ein Tabellenblatt selektiert sein, es können aber auch mehrere gleichzeitig selektiert sein
mit dem Befehl Sheets(...).Select selektiert man ein bestimmtes Tabellenblatt.
3. da mehrer Blätter gleichzeitig selektiert werden können (Gruppe), gibt es für den Select-Befehl zwei Varianten:
a) Sheets(...).Select oder Sheets(...).Select True
hat zur folge, dass die alte Selektion aufgehoben wird und nur das neue Blatt selektiert und damit auch gleichzeitig aktiviert wird.
b) Sheets(...)Select False
hat zur folge, dass die alte Selektion bestehen bleibt und das neu selektierte Blatt zur Gruppe hinzugefügt wird. Das Aktive Blatt wechselt nicht.
wendet man Sheets(..).Activate in eine bestehenden Gruppe an, so gilt folgendes:
- man aktiviert ein Blatt das bereits zur Gruppe gehört: die Selektion bleibt erhalten und nur das aktive Blatt wechselt
- man aktiviert ein Blatt das nicht zur Gruppe gehört: die Selektion wird aufgehoben und das neue Blatt wir aktivert und selektiert.
Gruß Daniel

Anzeige
Worksheets("Tabelle1").Select (nicht Activate) oT
22.05.2014 21:19:38
Matthias L

AW: Worksheets("Tabelle1").Select (nicht Activate) oT
22.05.2014 21:34:54
Chrissi
Hallo,
ich hab's
Sub Zelle_A1()
Dim wsh As Worksheet
For Each wsh In Sheets
wsh.Activate
Range("A1").Select
Next wsh
End Sub
Danke für euere Antworten.
Schönen Abend wünscht
Chrissi

ThisWorkbook.Worksheets.Select
22.05.2014 21:48:44
Matthias L
Hallo
Hast aber eine ganz andere Frage gestellt!
So wie es jetzt aussieht willst Dur nur in allen Tabellenblättern die Zelle A1 markiert haben.
Das ginge dann auch ohne Schleife
Sub chrissi()
ThisWorkbook.Worksheets.Select
Range("A1").Activate
End Sub
Noch ein Hinweis!
Deine Vorgehensweise ist falsch, Chrissi
Sollte sich mal z.B. ein Diagramm im Workbook befinden, läuft VBA auf einen Fehler
Denn Du sprichts mit For Each wsh In Sheets alle Blätter an.
wenn es nur Tabellenblätter sein sollen, empfehle ich Dir statt Sheets immer Worksheets zu benutzen.
Den Namen der Variable hast Du ja schon richtig benannt wsh (was ja sicher worksheets bedeuten sollte) ;-)
Gruß Matthias

Anzeige
AW: ThisWorkbook.Worksheets.Select
23.05.2014 20:04:59
Chrissi
Hallo Matthias,
danke! Klappt prima.
Grüße
Chrissi

Danke für die Rückmeldung ...owT
23.05.2014 20:38:59
Matthias L

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige