Verwenden von SVERWEIS über mehrere Arbeitsblätter hinweg, ohne auf das ursprüngliche Arbeitsblatt zu verweisen

Verwenden von SVERWEIS über mehrere Arbeitsblätter hinweg, ohne auf das ursprüngliche Arbeitsblatt zu verweisen

Ich habe eine Arbeitsmappe, die einige Makros ausführt, um Kopien von Blättern aus einer Reihe anderer Arbeitsmappen einzufügen. Ich versuche, eine Datei einzurichten, die Benutzer in ihre Projektordner kopieren und dann einfach verwenden können, ohne VLOOKUPjedes Mal Formeln einrichten zu müssen. Sie kopieren also die Datei NewProject.xlsm vom Server in ihren Projektordner und verwenden dann die Makros, um die verschiedenen Blätter einzufügen, die sie benötigen, entweder aus den Arbeitsmappen der 100er-, 110er- oder 120er-Reihe, die sich auf dem Server befinden.

Die Arbeitsmappe der 100er-Reihe enthält ein Blatt mit dem Namen ItemsE und hat VLOOKUPin zwei Spalten eine Datenüberprüfung in einer weiteren. Wenn Benutzer das Blatt 100_1A in ihre Projektdatei ziehen, zieht es die VLOOKUP, verweist aber auf die Originaldatei.

Die NewProject-Datei enthält auch das Blatt ItemsE mit denselben Informationen. Meine Frage ist, kann ich die VLOOKUPFormel in der Arbeitsmappe der 100er-Reihe auf den Blättern 100_1A und 100_1C verwenden und sie auf das Blatt ItemsE in der NewProject-Datei anstatt auf die Datei der 100er-Reihe verweisen lassen? Ursprünglich habe ich die folgende Formel in die Datei der 100er-Reihe eingefügt.

=VLOOKUP(D24,ItemsE!A:C,2,FALSE)

Wenn ich die NewProject-Datei öffne, nachdem ich die benötigten 100er-Blätter darin importiert habe, lautet die Formel:

=VLOOKUP(D22,'W:\Design\[C_DE100Series.xlsm]ItemsE'!A:C,2,FALSE)

Gibt es eine Möglichkeit, dies zu beheben? Würde es auch bei der Datenüberprüfung funktionieren?

Vielen Dank für die Hilfe und entschuldigen Sie die lange Erklärung. Wenn Sie weitere Informationen von mir benötigen, lassen Sie es mich wissen.

Antwort1

Sie können in Ihren Arbeitsblattformeln einen gemeinsamen Namen für die ElementeE definieren.

Sorgen Sie beispielsweise dafür, dass der Name auf „Ort“ verweist. Wenn Sie ein Arbeitsblatt in die empfangende Arbeitsmappe ziehen, wird der für die empfangende Arbeitsmappe definierte Name jedoch nicht verwendet und „Ort“ verweist weiterhin auf die Namensdefinition der sendenden Arbeitsmappe.

Sie können ein Makro verwenden, das die alte Position auf dem aktiven Blatt löscht, das gerade in die empfangende Arbeitsmappe gezogen wurde.

ActiveWorkbook.Names("place").Delete

In diesem Fall wird der bereits definierte Name in der empfangenden Arbeitsmappe verwendet.

verwandte Informationen