Frage von ranixi, 39

Ist es möglich einige Spalten einer Excel Datei in eine andere Excel Datei automatisch zu übertragen?

Hi erstmal,

Folgendes Thema: - Ich möchte 2 Excel Listen, eine für mich und eine für den Rest meines Vereines. - Da ich in dieser Excel Liste Vorschläge/Probleme sammle, möchte man nicht, dass man in der öffentlichen Excel Liste z.B. die Namen sieht. - Ist es jetzt möglich einige Spalten in einer anderen Excel Datei auszugeben mit einer Formel? - Falls möglich möchte ich, dass sich die 2. Excel Liste immer aktualisiert, sobald dass ich ein neuen Vorschlag in meiner Excel Liste eintrage.

Habt ihr eine Lösung für einen unwissenden Menschen wie mich? ;-)

Vielen Dank für eure Hilfe

Mfg

ranixi

Antwort
von FuHuFu, 14

Du kannst in einer Excel Zelle eine Referenz setzen auf eine Zelle in einer anderen Excel Tabelle. Dann ändert sich die Zelle automatisch, wenn die Zelle in der anderen Excel Tabelle sich ändert.

http://www.excel-helfer.de/excel-zellbezuege-aus-einem-anderen-tabellenblatt.htm...

Antwort
von offeltoffel, 21

Ich hoffe, ich habe dein Problem verstanden...

Du sprichst von zwei verschiedenen Dateien, oder? Also z.B.

Excel_privat.xlsx 

und

Excel_public.xlsx

Und du möchtest, dass er bspw. Spalte B von Excel_public automatisch aktualisiert, wenn du etwas in Spalte B von Excel_privat schreibst - richtig soweit?

Das geht schon, aber nur, wenn du auch immer auf beide zugreifen kannst (z.B. lokal auf einem Computer).

='#Laufwerk#:\#Pfad#\[Exceldokument.xlsx]Tabelle1'!B1

Beispiel für Excel_public.xlsx:

='D:\Dokumente\Excel\[Excel_privat.xlsx]Tabelle1'!B1

Sollte das Tabellenblatt anders heißen, z.B. "Übersicht" oder so, dann ersetze "Tabelle1" durch diesen Begriff. Und dann halt den Zellbezug.

Kommentar von ranixi ,

Vielen Dank für die schnelle Antwort du hast meinen Tag gerettet. Genau so habe ich mir das Vorgestellt. Vielen Dank!

Kommentar von offeltoffel ,

Falls du nach einer Lösung mit nur einem Dokument suchst, überleg mal Folgendes:

Du kannst in Excel Spalten ein- und ausblenden. In diese Spalten kannst du Dinge schreiben, die andere nicht sehen sollen. Ein aufmerksamer Leser würde aber vielleicht merken, dass da was fehlt (oder er liest den Zellbezug). Deswegen würde es sich vielleicht noch anbieten, das Tabellenblatt zu sperren (Register "Überprüfen", Blatt schützen).

Eine komplexere Lösung erfordert VBA (Programmieren in Excel), da könntest du mit einem Passwortschutz Tabellenblätter unsichtbar machen.

Ein Problem, das aber immer bleibt: Wenn in Zelle A die Namen stehen (die keiner erfahren darf) und in Zelle B die Daten...dann muss der Nutzer nur den Zellbezug umstellen, von

='D:\Dokumente\Excel\[Excel_privat.xlsx]Tabelle1'!B1

auf

='D:\Dokumente\Excel\[Excel_privat.xlsx]Tabelle1'!A1

und schon sieht er alles, was er braucht.

Dinge in Excel zu verstecken ist schwerer, als man meint. Wenn sich jemand auskennt, wird er immer an die Daten kommen...

Kommentar von ranixi ,

Ja, da hast du vollkommen recht. Aber da in meinem Verein eigentlich keine Informatik versierte Menschen sind, sollte das funktionieren.

Kommentar von offeltoffel ,

Alles klar. Um die Sicherheit zu erhöhen, kannst du die Namen auch in Spalte V oder X schreiben. Da hinten sucht keiner, wenn er es nicht unbedingt vermutet.

Kommentar von Iamiam ,

zurück zum Auslesen. Die Methode funktioniert im Normalfall. Sie versagt, wenn beide Dateien gleichzeitig geöffnet sind und in der Quelltabelle eine neue Zeile eingefügt  (oder gelöscht) wird.

Dagegen hilft:

=indirekt("'D:\Dokumente\Excel\[Excel_privat.xlsx]Tabelle1'!"&Adresse(Zeile(),Spalte()))


Adresse hat die Syntax =Adresse(Zeile;Spalte als Zahl) und bezieht sich auf die =Ziel-Datei. In Kombination mit dem Vorspann Pfad+Datei+Blattname der Quelldatei  liefert das auch die Werte von neu eingefügten Zeilen und ignoriert Zell-Verschiebungen in der Quelle, liefert auch keinen Fehler bei gelöschten Zellen. Sie liest stur den Wert aus, der in derselben Position der anderen Datei steht. Beliebig kopierbar.

@ Offeltoffel: Durch vertauschen von Zeile() und Spalte() kann man eine Tabelle auch stürzen, aber das ist wieder ganz was andreas.

Antwort
von rednblack, 16

Tut mir Leid, aber das ist Käse. Wenn du die Einsender geheim halten willst, sollst, musst, dann trag sie in einer gesonderten Datei ein, gib ihnen eine Nummer und trag nur die Nummer in die Tabelle ein, die veröffentlicht wird. Natürlich gibt es Tabellen, die andere Tabellen fragen, was es Neues gibt, aber das würde hier den Rahmen doch deutlich sprengen.

Du kannst auch die Spalten ausblenden, in denen die Namen stehen, das Blatt dann (mit Passwort schützen) und die Datei so veröffentlichen. Das bedeutet allerdings, dass du jedes Mal für eine Bearbeitung den Blattschutz aufheben, dein Passwort eingeben und die Spalten wieder einblenden musst. Das Ganze dann vor der erneuten Veröffentlichung wieder in den Veröffentlichungszustand bringen.

Antwort
von hanfmannlein, 15

Habe vor kurzem etwas ähnliches mit visual basic script gemacht, das sollte aber auch mit macros funktionieren.

Ich weiß gerade nicht auswendig wir man die Erweiterten Optionen aktiviert.
Jedenfalls kannst du dann in Excel macros aufzeichenen.
Da führst du dann deine gewünschte Aktion aus.
Wenn du dein Macro speicherst, kannst du das beliebig oft wiederholen.

Keine passende Antwort gefunden?

Fragen Sie die Community