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

Ausgeblendetes Tabellenblatt per Makro ansprechen

Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 16:47:33
Fififox
Hallo zusammen,
ich bin ein wirklicher VBA-Neuling und habe folgendes Problem: Bei Ausführung meiner Makros muss auf passwortgeschützte ausgeblendete Tabellen zugegriffen werden. Das funktioniert leider nicht, da ich anscheinend Select u.ä. verwende. Habe jetzt schon probiert mit Range.Copy den Select-Anteil zu reduzieren, bekomme da aber immer einen BEZUG!-Fehler.
Mein Makro sieht so aus:
Worksheets("Gefilterte Listen").Activate
Range("V5:V82").Select
Selection.Copy
Worksheets("Kopie FAAA").Activate
Range("A1:A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("A1").Select
Worksheets("Gefilterte Listen").Activate
Range("V1").Select
End Sub
Danach sollen alle Werte alphabetisch geordnet werden:
Worksheets("Kopie FAAA").Select
Range("A1").Select
Dim rngZelle As Range, Auswahl As Range
For Each rngZelle In Columns("A:A").Cells
If rngZelle.Value "" Then
If Auswahl Is Nothing = True Then
Set Auswahl = rngZelle
Else
Set Auswahl = Union(Auswahl, rngZelle)
End If
End If
Next rngZelle
Auswahl.Select
Selection.Sort Key1:=ActiveCell, Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Selection.Copy
Worksheets("Personal").Activate
Range("D2:D81").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("G21").Select
Worksheets("Kopie FAAAanwesend alphabetisch").Activate
Range("B1").Select
Application.CutCopyMode = False
End Sub
Mit dem "Reinigen" der Makros komme ich nicht zurecht. Habe auch gelesen, dass man die betroffenen Tabellen per Makrobefehl vor den Berechnungen einschalten und wieder ausschalten (mit Passwortschutz) kann. Bekomme ich aber leider auch nicht hin. Kann mir da jemand helfen?
Vielen Dank im Voraus für eure HIlfe.
Fififox

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 16:49:55
Hajo_Zi
Arbeite mit
With Worksheets("Gefilterte Listen")
Punkt vor Cells und Range nicht vergessen.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 17:46:12
Fififox
Hallo Hajo,
vielen Dank für die schnelle Antwort.
Gruß
Fififox
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 18:06:42
Fififox
Hallo Hajo,
habe es probiert:
Worksheets("Gefilterte Listen").Range("V5:V82").Copy
Worksheets("Kopie FAAAanwesend alphabetisch").Range("A1:A78").PasteSpecial Paste:=xlPasteValues
With Worksheets("Kopie FAAA").Range("A1:A78")
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Sub
Funktioniert leider nicht, wahrscheinlich verstehe ich die Sache mit "With" nicht...
Vielen Dank für die Unterstützung...
Fififox
Anzeige
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 19:36:51
Hajo_Zi
bei mir geht es, ich habe es mal mit verbundene Zellen getestet.
Gruß Hajo
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 20:40:56
Werner
Hallo,
hier mal dein angepasster Code:
Public Sub aaa()
Dim loLetzte As Long
Application.ScreenUpdating = False
With Worksheets("Gefilterte Listen")
.Range("V5:V82").Copy
Worksheets("Kopie FAAA").Range("A1").PasteSpecial Paste:=xlPasteValues
With Worksheets("Kopie FAAA")
.Range("A1").PasteSpecial Paste:=xlPasteValues
With .Columns(1)
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
.Sort Key1:=.Cells(1, 1), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row
.Range(.Cells(2, 1), .Cells(loLetzte, 1)).Copy
Worksheets("Personal").Range("D2").PasteSpecial Paste:=xlPasteValues
End With
End With
End With
Application.CutCopyMode = False
Worksheets("Kopie FAAAanwesend alphabetisch").Activate
End Sub
Damit ist aber noch nicht das "Problem" mit dem Blattschutz gelöst.
Dazu fehlen Infos. Wieviele Blätter hat die Datei? welche sind per Blattschutz geschützt? Mit oder ohne Passwort?
Am besten mal deine Mappe hier hochladen.
Gruß Werner
Anzeige
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
25.11.2018 20:42:39
Fififox
Hallo Werner,
vielen Dank. Hab es hinbekommen und ohne "Select" kann ich auch das Makros laufen lassen, wenn für die Arbeitsblattstruktur ein Passwortschutz besteht. Danke für die schnelle und kompetente Unterstützung. Ich hätte jedoch noch eine Frage: Ich habe eine Dropdownliste erstellt, in der die ausgewählten Namen in den anderen Dropdownfeldern mit gleichem Listenbezug nicht mehr zur Verfügung stehen. Soll heißen: 5 Dropdownfelder mit Listenbezug "A,B,C,D,E". Wenn man "A" auswählt, steht danach nur noch "B,C,D,E" zur Verfügung. Jetzt soll die Liste aber immer oben beginnen. Da die Namensliste, um die es eigentlich geht immer unterschiedlich lang ist und ich Leereinträge vemeiden möchten (bisher einfach eine sicher größere Zellenzahl als Liste definiert), suche ich nach einer Lösung, bei der nur die Zellen mit Wert in einer Spalte für die Dropdownliste berücksichtigt werden. Bisher habe ich überhaupt keinen Ansatz. Hast du eine Idee?
Vielen Dank im Voraus
Fififox
Anzeige
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
26.11.2018 11:27:56
Werner
Hallo,
sorry, aber im Moment verstehe ich nur Bahnhof. Liegt vermutlich daran, dass ich deine Datei nicht kenne. Nur aufgrund deinem Beschreibungsversuch ist das für mich nicht nachvollziehbar.
Besser bitte deine Datei hochladen und dort mal beschreiben was du willst.
Gruß Werner
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 17:15:04
Daniel
Hi
wenn ausgeblendete Blätter bearbeitet werden sollen und diese dazu auch ausgeblendet bleiben sollen, dann ist das Arbeiten mit Selection. und .Select natürlich tabu.
wenn du Zellen auf einem ausgeblendeten Blatt bearbeiten willst, musst stattdessen vollständig referenzieren, dh. aus-
Worksheets("Gefilterte Listen").Activate
Range("V5:V82").Select
Selection.Copy
Worksheets("Kopie FAAA").Activate
Range("A1:A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
wird
Worksheets("Gefilterte Listen").Range("V5:V82").Copy
Worksheets("Kopie FAAA").Range("A1").PasteSpecial Paste:=xlPasteValues
weitere Infos dazu hier: https://www.online-excel.de/excel/singsel_vba.php?f=78
beachte, dass du das Tabellenblatt vor JEDEM Range, Cells, Columns oder Rows hinzufügen musst.
insbesondere bei den Cells innerhalb von Range(Cells, Cells) oder bei den Keys in der .Sort-Funktion vergisst man das gerne mal, aber auch da muss immer vor jedem Zellbezug die Tabellenblattangabe stehen.
Gruß Daniel
Anzeige
AW: Ausgeblendetes Tabellenblatt per Makro ansprechen
23.11.2018 17:44:32
Fififox
Hallo Daniel,
vielen Dank für die schnelle Antwort. Ich werde es gleich mal probieren.
Gruß
Fififox
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge