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

Nicht sichtbare Zellen kopieren.

Nicht sichtbare Zellen kopieren.
19.01.2023 01:40:41
Mr.PT
Guten Abend in die Forums-Gemeinde,
vielleicht hat jemand das Phänomen ja auch schon beobachtet und ev. eine Lösung dafür gefunden:
Bekanntlich kann man bei Excel-Listen beliebige Spalten ausblenden und mit einer Zellenmarkierung auch über die ausgeblendeten Spalten hinweg einen Bereich aufziehen und per Strg+C kopieren. Dabei bleibt der markierte Bereich trotz der nicht sichtbaren Spalten stets vollständig und zusammenhängend, sprich es werden standardmäßig auch die nicht sichtbaren Zellen mit markiert/kopiert.
Das ändert sich jedoch, wenn zusätzlich noch ein Autofilter für Zeilen aktiv ist und (!) mindestens eine Zeile gefiltert/ausgeblendet ist.
Ein wie oben erläutert mit der Maus, Tastatur oder auch per VBA-Makro markierter Zellenbereich wird in diesem Modus an allen Stellen unterbrochen, an denen Spalten ausgeblendet sind. Im Ergebnis markiere ich dann also nur noch die sichtbaren Zellen. Die nicht sichtbaren Zellen werden ausgelassen und der gesamte Bereich ist um die Anzahl der ausgeblendeten Zellen gekürzt.
Das Verhalten erschließt sich mir nicht und daher wären meine Fragen in die Runde:
- Wieso hat der Autofilter für Zeilen einen Einfluss darauf, ob ausgeblendete SPALTEN mit kopiert werden oder nicht?
- Wie kann ich bei gleichzeitigem Autofilter UND Spalten-Ausblendungen trotzdem alle Zellen einer Zeile (auch die nicht sichtbaren) markieren und kopieren?
Nur vorsorglich: Den Hinweis, einfach entweder auf Autofilter oder auf Spalten-Ausblendungen zu verzichten, würde ich jetzt nicht unbedingt als zielführenden Lösungsansatz betrachten.
Verbindlichen Dank im Voraus, für jede hilfreiche Rückmeldung.
Userbild
Mr.PT [Do.19.Jan.2023 01:36]

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 08:56:10
neopa
Hallo,
... habe es eben mal in XL2010 getestet.
Wenn Du nun wissen möchtest, warum das so ist, müsstest Du bei MS nachfragen.
Es ist halt so. Für mich persönlich macht es auch durchaus auch Sinn, das es so ist. Was Du nun als "Lösung" dessen betrachten würdest, erschließt sich mir noch nicht wirklich. Dir bleibt mE nicht anderes übrig, als das gegebene zu akzeptieren so wie es ist.
Gruß Werner
.. , - ...
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 11:17:19
Mr.PT
Hallo Werner,
danke für Deine Nachricht.
Hier der Hintergrund zu meiner Anfrage:
Um bei größeren Tabellen mehr Übersicht zu bekommen, nutze ich die Möglichkeit, nicht relevante Spalten auszublenden und wende dann zusätzlich den Autofilter an, um etwa Datenzeilen mit Gruppenzusammengehörigkeit darzustellen. Beim Kopieren von Teilen einer Zeile in eine andere tritt dann der besagte Effekt auf, der mir erst kürzlich auffiel, nachdem die kopierten Zieldaten verkürzt und somit in völlig flaschen Spalten abgelegt wurden.
Eine erhoffte Lösung des Problems ginge in die Richtiung zu dem vielbeachteten Suchthema "Nur sichtbare Zellen kopieren", wofür es ja sogar einen entsprechenden Befehl & Hotkey gibt (Strg+Shift+,) Nur für die entgegengesetzte Richtung "Auch nicht sichtbare Zellen kopieren" habe ich praktisch nichts im Netz finden können.
Es wäre halt sehr umständlich, wenn ich für einen kleinen Kopiervorgang jedes mal die teils aufwändigen Filtereinstellungen vorab zurücksetzen müsste, um sie nach Strg+C / Strg+V wieder neu setzen zu müssen.
Mit einem entsprechendem Kommando "Auch nicht sichtbaren Zellen kopieren" oder vielleicht auch einer trickreichen VBA-Lösung, die dann den Zellenbereich komplett markiert, wäre mir in dieser speziellen Situation grundsätzlich sehr geholfen.
Mit besten Grüßen - Peter
[Do.19.Jan.2023 11:11]
Anzeige
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 11:34:36
ChrisL
Hi
Wenn du nur Werte kopieren möchtest, dann kannst du mit Range=Range arbeiten. Z.B. folgender Code übernimmt die aktive Zeile der gefilterten Tabelle1 in Tabelle2.
With Intersect(Tabelle1.UsedRange, ActiveCell.EntireRow)
    Tabelle2.Range("A1").Resize(1, .Columns.Count) = .Value
End With
cu
Chris
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 15:51:06
Mr.PT
Hi Chris,
danke für Deine Antwort - ein interessanter Ansatz und ein cleveres Stückchen Code.
With Intersect(Tabelle1.UsedRange, Range("D8:G8"))
Tabelle2.Range("A1").Resize(1, .Columns.Count) = .Value
End With
Der Code kopiert die Inhalte des Bereiches "D8:G8" in ein separates Blatt Tabelle2 und nimmt dabei auch die Werte der ausgeblendeten Spalten mit. Das ist immerhin ein kleiner Fortschritt, da die bisherigen Methoden die nicht sichtbaren Zellen ausgelassen haben.
Beim Kopieren in die gleiche Tabelle1 klappt es allerdings wieder nicht, denn dort werden bei der Ausgabe ebenfalls nur die sichtbaren Zellen abgelegt. Nach dem Aufklappen der ausgeblendeten Spalten sind diese leer:
With Intersect(Tabelle1.UsedRange, Range("D8:G8"))
Tabelle1.Range("D16").Resize(1, .Columns.Count) = .Value
End With
Ferner benötige ich leider auch das Gesamtformat der Zellen als echte Kopie und nicht nur die Werte.
Mein ursprünglicher Ansatz dazu war ja einfach so:
Range("D8:G8").Copy
Range("D16").Select
ActiveSheet.Paste
nur funktioniert der eben nicht mit den nicht sichtbaren Zellen.
Hättest Du vielleicht noch eine Idee, wie man mit Deinem Ansatz Excel dazu bringen könnte, einfach nur den Bereich "D8:G8" vollständig zu kopieren und ihn im gleichen Blatt nach unten auf z.B. "D16:G16" vollständig abzulegen, wenn auch dazwischen Spalten ausgeblendet sind und der Autofilter in Anwendung ist?
Ich hätte nicht gedacht, dass das so schwierig ist.
Vielen Dank nochmal für die engagierte Hilfe.
VG Peter
[Do.19.Jan.2023 15:48]
Anzeige
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 15:58:13
ChrisL
Hi
Danke für die Rückmeldung. Da mein Ansatz nur mit Werten und nicht mit Formaten funktioniert, zerbreche ich mir jetzt nicht den Kopf über die Gegenrichtung.
Aber die Idee von Rudi scheint vielversprechend.
cu
Chris
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 20:48:01
Mr.PT
Hi Chris,
danke ebenfalls für Dein Feedback.
In der Tat tendiere ich auch zu dem Ansatz von Rudi, der einfach eine benutzerdefinierte Ansicht nutzt, um die Spalten kurzfristig einzublenden und die Temp-View nach dem Copy-Vorgang dann einfach wieder verschwinden lässt. Ist zwar getrickst, aber es funktioniert.
Ich möchte noch die anderen Beiträge durcharbeiten, sage aber hier schon mal Danke für Deinen Einsatz und für den interessanten Daten-Copy-Export Code. Den kann ich sicher noch an anderen Stellen sehr gut gebrauchen. Man kann so viel lernen - das hört echt nie auf!
Beste Grüße - PT
[Do.19.Jan.2023 20:45]
Anzeige
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 11:38:47
Rudi
Hallo,
mit Hilfe einer benutzerdefinierten Ansicht.
z.B.
Sub aaaa()
  Application.ScreenUpdating = False
  ActiveWorkbook.CustomViews.Add "tmp", True, True
  Columns.Hidden = False
  ActiveCell.EntireRow.Copy Sheets(2).Cells(1, 1)
  With ActiveWorkbook.CustomViews("tmp")
    .Show
    .Delete
  End With
End Sub
Gruß
Rudi
AW: das war schon wohl in jeder XL-Version so ...
19.01.2023 20:59:46
Mr.PT
Guten Abend Rudi,
sorry, dass ich erst jetzt auf Deinen Post anworten kann.
Das ist wirklich eine clevere Idee: CustomViews / Benutzerdefinierte Ansichten. Vergessenes Wissen aus lang vergangenen Zeiten, darauf wäre ich jetzt wirklich gar nicht mehr gekommen.
Mit diesem Trick werden die Spalten kurz wieder eingeblendet und nach dem Copy-Vorgang dann die alte Ansicht wieder hergestellt, indem die temporäre View gelöscht wird - genial!
Ich bin zwar ein wenig enttäuscht, dass man bei meinem Lieblingsprogramm Excel zu solchen Tricks greifen muss und auch weil ich nach wie vor nicht ganz verstehe, warum ausgeblendete Spalten den Autofilter dazu veranlassen, den Copy-Bereich zu zerstückeln.
Dennoch, mit dieser Lösung die praktisch verzögerungsfrei im VB-Code eingebaut und genutzt werden kann, kann die Aufgabe durchaus als gelöst betrachtet werden.
Von daher lieber Rudi, ein herzliches Dankeschön an Dich und auf dass Du noch vielen verzweifelten Anwendern den Tag, die Woche oder auch das Jahr retten kannst.
Tolles Forum! Tolle Community!
VG - Mr.PT (Peter)
[Do.19.Jan.2023 20:54]
Anzeige
Versuch einer Klärung
19.01.2023 09:37:23
lupo1
A1:C4:
a b c
1 2 3
4 5 6
7 8 9
1. Zeile 3 und Spalte B werden manuell ausgeblendet
2. Autofilter c>3
Ergebnis: Zeile 3 (=4 5 6) wird durch den Autofilter wieder eingeblendet, (1 2 3) wird weggefiltert.
3. Zeile 3 wird erneut manuell ausgeblendet
Ergebnis: Die manuelle Ausblendung NACH Autofilter klappt.
4. Der Bereich A1:C4 wird an die Stelle G7 kopiert (Strg-C Enter):
Ergebnis: Dort kommen an:
a c
7 9
... in einer physischen 2x2 Matrix.
Ergebnis: Der Autofilter hebelt manuelle Zeilenausblendungen aus, umgekehrt aber nicht.
Da es keinen Spalten-Autofilter gibt, besteht dort auch der Konflikt nicht.
Anzeige
AW: Versuch einer Klärung
19.01.2023 12:26:33
Mr.PT
Hallo lupo1,
auch Dir danke für Deine Antwort und dass Du Dich mit meinem Anliegen befasst hast. Wenn ich das Ergebnis Deiner Analyse richtig verstehe, sagst Du, es macht einen Unterschied, ob zuerst die Spalten ausgeblendet werden und dann der Filter gesetzt wird - oder anders herum erst den Autofilter setzen und dann die Spalten ausblenden.
Das wäre ein interessanter Ansatz, den ich gleich mal bei meiner Probetabelle (siehe meinen Start-Beitrag) ausprobiert habe. Leider zeigte sich bei beiden Varianten kein Unterschied: Sobald Spalten und gleichzeitig per Autofilter zusätzlich auch Zeilen ausgeblendet sind, (egal in welcher Reihenfolge) lässt sich die Zeile nicht mehr vollständig kopieren, sondern nur noch die sichtbaren Bereiche.
Das ist schon sehr merkwürdig, denn ohne Autofilter sind die Spalten doch genauso ausgeblendet nur da werden bei copy trotzdem auch die nicht sichtbaren Bereiche mit kopiert - der copy-Rahmen bleibt komplett ohne Teilbereichstrennung. Der Autofilter verändert ja auch nicht die Darstellung der sichtbaren Zeilen, dennoch verändert sich das Kopie-Ergebnis MIT und OHNE zusätzlichem Autofilter.
Derzeit gelingt es mir leider noch nicht, einen horizontalen Zellenbereich vollständig zu kopieren, wenn Spalten ausgeblendet sind und gleichzeitig der Autofilter Zeilen filtert.
Trotzdem zunächst nochmal Danke für Deine Anregung
Viele Grüße - Peter
[Do.19.Jan.2023 12:24]
Anzeige
Dann "kopiere" anders
19.01.2023 13:28:26
lupo1
1. Am Ziel mit =INDEX():INDEX() (oder auch einfach =A1:Z99 eine Formel aufspannen, die die ganze Quelle enthält
2. Plattmachen
AW: Dann "kopiere" anders
19.01.2023 22:47:02
Mr.PT
Guten Abend Lupo1,
auch wenn bislang alles darauf hindeutet, dass mein Problem nur über den Umweg der Einblendung von Spalten umgangen werden kann, wollte ich trotzdem nochmal Deinen letzten Post aufgreifen.
Was meintest Du mit "Dann kopiere anders", =A1:Z99 eine Formel im Zielbereich aufspannen? plattmachen?
Wie würdest Du anhand der beiliegenden Excel-Vorlage (Spalten & Zeilen bereits vorgefilter) konkret den Zellbereich "B8:I8" etwa auf die Zielposition "B16:I16" kopieren, ohne das Lücken entstehen?
https://www.herber.de/bbs/user/157392.xls
Vielleicht hast Du ja noch die Muße es mir am konkreten Beispiel einmal zu zeigen.
Vielen Dank im Voraus
Peter [Do.19.Jan.2023 22:46]
Anzeige
Du hast ja sogar 365 ...
19.01.2023 23:27:35
lupo1
B16: =B8:I8
Markiere 16:16 oder B16:I16 und überkopiere das mit den eigenen Werten.
AW: Du hast ja sogar 365 ...
20.01.2023 00:21:29
Mr.PT
Hallo Lupo,
"Du hast ja sogar 365" - schön wär's, ist aber nur der Firmen-Rechner. Zuhause noch nach wie vor mit Excel 2003 unterwegs :D
Also ich habe es jetzt so verstanden, dass im Endeffekt in der Zielzeile16 folgende Formeln stehen:
B16 C16 D16 E16 F16 G16 H16 I16
=B8 =C8 =D8 =E8 =F8 =G8 =H8 =I8
Wenn es das ist, was Du meintest, dann werden die Werte aus Zeile 8 ja einfach nur 1:1 nach unten gespiegelt, was aber nicht mit dem kompletten kopieren der gesamten Zellen mit allen Inhalten und Formaten vergleichbar ist - letzteres benötige ich, um neu hinzugekommene Datensätze auf die gleiche Form der alten zu trimmen. Bei einigen Zellen kann ich da 1:1 kopieren, bei anderen muss ich die geänderten Werte beibehalten und nur die Formatierung von oben übernehmen. Das Ganze ist ein aktives Konten-Management-System, in welches ich regelmäßig Updates aus CSV-Export-Dateien einspiele und dann die Formatierung manuell nacharbeite, damit alles akurat und gleichmäßig aussieht.
Wenn es also das ist, was Du meintest, käme das leider nicht in Frage und ich würde dann bei der Variante mit den benutzerdefinierten Ansichten bleiben.
Wie auch immer - verbindlichen Dank für Deinen engagierten Support und Deine Zeit.
Für heute erstmal FA und guten Abend
Mr.PT (Peter) [Fr.20.Jan.2023 00:18]
Anzeige
Verschieb es seitlich, komm doch mal selbst drauf!
20.01.2023 11:33:00
lupo1
AW: Nicht sichtbare Zellen kopieren.
19.01.2023 16:23:18
Daniel
Hi
warum wieso weiß ich nicht, ich kenne die Beweggründe von MS nicht.
vermutlich wird dir nichts anderes übrig bleiben, als das was du kopieren willst, zuerst einzublenden und hinterher wieder auszublenden.
den Einblende-Zustand der Zeilen und Spalten kannst du dir aber auf einfache weise merken, dazu hat Excel die Funktion
Ansicht - Arbeitsmappenansicht - benutzerdefinierte Ansichten
damit geht das sehr einfach, auch für komplexe Filterungen.
dh folgender Ablauf
1. Aktuellen Stand in der Benutzerdefinierten Ansicht speichern
2. Spalten und Zeilen je nach Bedarf einblenden oder Filter aufheben
3. Kopieren und einfügen
4. Benutzerdefinierte Ansicht wieder herstellen
5. ggf Benutzerdefinierte Ansicht wieder löschen.
geht auch in einem Makro sehr einfach und müsste über den Recorder aufzeichenbar sein.
Gruß Daniel
Anzeige
AW: Nicht sichtbare Zellen kopieren.
19.01.2023 21:25:52
Mr.PT
Hallo Daniel,
danke für Deinen konstruktiven Lösungsansatz mit komplettem Workflow.
Auch der Vorschlag von Rudi Maintaire in seinem Post um 11:38 Uhr ging in diese Richtung.
Aber ich gebe Dir Recht, letztlich bleibt mir für diesen speziellen Fall wohl tatsächlich nichts anderes übrig, als das Problem mit einem Trick zu umgehen, gleichwohl macht der Einsatz von benutzerdef.Views den Vorgang ja auch recht komfortabel.
Nun, schade, dass die Nuss als solche (Excel dazu zu bringen, trotz Spalten- und Autofilter den Zellbereich komplett zu kopieren) offenbar nicht zu knacken war. Der Dialog mit den Experten aus dem Excel-Forum hat mir aber dennoch viele neue Erkenntnisse gebracht und auch Spaß gemacht. Wenn mehr Zeit vorhanden wäre, würde ich mir das viel öfter mal gönnen.
Dir und allen Unterstützern an dieser Stelle nochmals ein dickes Lob verbunden mit herzlichem Dank und besten Grüßen.
Nochmal: Tolles Forum! Tolle Community!
Mr.PT (Peter)
[Do.19.Jan.2023 21:22]

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige