Clever-Excel-Forum

Normale Version: Daten aus zwei Arbeitsblätter miteinander verbinden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen

Meine bescheidenen Excel-Anwenderkenntnisse stossen derzeit an die Grenzen bei dem folgenden Problem - im Anhang ein Beispielfile inkl. gewünschtem Ergebnis. [attachment=27322]

Ich habe eine Liste mit ca. 1'500 Einträgen - eine sogenannte Redirect-Map, mit im ersten Arbeitsblatt "alte Links" eine Spalte A mit Redirects, in der Spalte B die alten Webseiten-Links.

Im zweiten Arbeitsblatt "Mapping alt-neu" hab ich dann ca. 5'000 Einträge mit dem Mapping zwischen alten (Spalte A) und neuen Links (Spalte B), wobei in der Spalte A nicht zwingend die Einträge identisch sind wie mit der Spalte B im ersten Arbeitsblatt - die ID ist aber Teil davon (Eintrag in Spalte A in Arbeitsblatt "Mapping alt-neu" ist enthalten in Spalte B des Arbeitsblattes "alte Links").

Aufgrund dieser Beziehung bräuchte ich dann in der Spalte C (erwünschtes Ergebnis, gelb markiert) des ersten Arbeitsblattes die dazugehörigen neuen Links aus der Spalte B im zweiten Arbeitsblatt.

Es kann durchaus sein, dass es kein solches Mapping gibt - somit soll der Eintrag in der Spalte C einfach leer bleiben -> beispielhaft in Zelle C7 des ersten Arbeitsblattes gezeigt.
Auch ist es so, dass nicht alle Einträge aus dem zweiten Arbeitsblatt (wie erwähnt ca. 5'000) vorhanden sind im ersten Arbeitsblatt (nur ca. 1'500 Einträge) -> beispielhaft an Zeile 7 im zweiten Arbeitsblatt zu sehen, den es so nicht gibt im ersten Arbeitsblatt.

Ich freue mich schon jetzt auf hilfreiche Unterstützung!
Herzlichen Dank und beste Grüsse
Roberto
Hallo,

vielleicht gab es einige Fehler bei der Erstellung der Beispieldatei (oder ich habe es zu oberflächlich geprüft)

Frage:

Wenn man die Header der alten URL ausliest, ist dort die neue URL (301 permantly moved) (Location: neue URL) ausgefüllt?

Falls ja, wäre es besser /sicherer diesen Weg zu gehen.

mfg
Hallo

Danke für deine schnelle Antwort. Ich habe die Beispiel-Datei gerade nochmals angeschaut und da sollte alles richtig sein - als Beispiel:

Eintrag in Zelle A1 der zweiten Arbeitsmappe "Mapping alt-neu" ist 12.html - diese ID ist enthalten im Eintrag der Zelle B3 der ersten Arbeitsmappe "alte Links" (  
http://webseite.com/12.html?param=on). Somit wird der neue Link dazu, aus A2 der "Mapping alt-neu" Arbeitsmappe, eingefügt in Zelle C3 der ersten Arbeitsmappe.

(zu deiner Frage bez. HTTP Statuscode - bei allen alten Links, das sind dann die ca. 5'000 aus der zweiten Arbeitsmappe, wird nur ein generischer 301 Statuscode ausgegeben, mit Weiterleitung auf die neue Hauptseite.
Die 1'500 Redirects aus der ersten Arbeitsmappe muss ich aber direkt anpassen und die neue Ziel-URL eintragen, damit diese auch nach der Webseiten-Migration einwandfrei funktionieren.

Danke und Gruss, Roberto
Moin

Spalte D füllt man mit Beispielen (576; 12; 2145) und ergänzt dann mit STRG-E (Blitzvorschau).
Spalte E:

Code:
=WENNNV(SVERWEIS(D2&".html";'Mapping alt-neu'!$A$2:$B$7;2;FALSCH);"")
Herzlichen Dank, shift-del - genau das, wonach ich suchte Thumbsupsmileyanim

Gerne würde ich hier versuchen, die Formel in eigenen Worten zu erklären - einerseits um zu sehen, ob ich es auch verstanden habe, und andererseits um es auch für andere Benutzer, die möglicherweise künftig auf den Thread stossen, zur Verfügung zu stellen. (statt nur Copy&Paste von deiner fixfertigen Lösung zu profitieren).


=WENNNV(SVERWEIS(D2&".html";'Mapping alt-neu'!$A$2:$B$7;2;FALSCH);"")


'Mapping alt-neu'!$A$2:$B$7 ist die Matrix, also die Tabelle in der zweiten Arbeitsmappe, worin das Mapping zwischen alte und neue URL steht und worin nach dem Suchkriterium gesucht wird.


D2&".html" aus der ersten Arbeitsmappe ist das Suchkriterium, wonach ich in der ersten Spalte der o.g Matrix in der zweiten Arbeitsmappe suche. Das ist die eindeutige ID aus jeder URL, die ich zuvor in der Spalte D angegeben hatte (z.B. '576', wenn die URL 'http://webseite.com/576.html?language=fr' lautet).

Das 2 ist der Spaltenindex, heisst die Nummer der Spalte in der Matrix, aus welcher der Eintrag für die neue URL geliefert wird (in der Matrix der Arbeitsmappe "Mapping alt-neu" stehen die neuen URLs in der zweiten Spalte, deshalb 2)

Ist Bereich_Verweis FALSCH, sucht SVERWEIS nach einer genauen Übereinstimmung. Andernfalls wird der Fehlerwert #NV geliefert.

Um schlussendlich bei den nicht übereinstimmenden Einträgen den Fehlerwert #NV zu vermeiden und stattdessen die Zelle leer zu lassen, kommt drum herum die WENNNV Funktion, mit dem abschliessenden "", um die Zelle leer auszufüllen. Da könnte jedoch auch ein Text wie z.B. "nicht gefunden" stehen.