Wie kann ich eine eingehende dynamische Tabelle in ein Standardformat umformatieren?

393
user25644

Ich muss eine Tabelle mit verbundenen Daten in einem Excel-Arbeitsblatt in ein Standard-Tabellenlayout in einem anderen Arbeitsblatt umformatieren. Das Problem ist, dass das Data-In-Arbeitsblatt ein flüchtiges Schema hat, sodass ich nicht mit denselben Zellen rechnen kann, die immer dieselben Daten enthalten. Beim Verknüpfen mit einer Dateneingabe erhalte ich beispielsweise die Zelle C2 als Gesamtlandbasenbereichsnummer. Wenn ich jedoch eine andere Dateneingabe eingebe, ist Zelle C2 der Name der Landbasis und C3 ist die Landbase-Fläche.

Daher muss ich bestimmte Zellen anhand des Wertes identifizieren, den sie enthalten, und dann die nächste Zelle daraus übernehmen und an einer bestimmten Stelle in Arbeitsblatt2 einfügen. Um die Sache noch komplizierter zu gestalten, muss ich eigentlich zwei Zellenwerte auswerten. Wenn die beiden Werte bestimmten Kriterien entsprechen, dann nehmen Sie die dritte Zelle in dieser Zeile und verwenden Sie sie im umformatierten Arbeitsblatt.

Auf dem ersten Dataset-Arbeitsblatt könnte zum Beispiel Folgendes stehen:

A1: "Area D" B1: "1234ha" C1: "protected" D1: "1970" A2: "Area B" B2: "1876ha" C2: "unprotected" D2: "1986" A3: "Area C" B3: "654ha" C3: "protected" D3: "1965" A4: "Area B" B4: "5556ha" C4: "protected" D4: "2011" 

Ich brauche das umformatierte Blatt unabhängig vom Eingabeschema:

A1: "Area B" B1: "protected" C1: "2011" D1: "5556ha" A2: "Area B" B2: "unprotected" C2: "1986" D2: "1876ha" A3: "Area C" B3: "protected" C3: "1965" D3: "654ha" A4: "Area D" B4: "protected" C4: "2011" D4: "1234ha" 

oder

Der zweite verbundene Datensatz könnte Folgendes sein:

A1: "2652ha" B1: "protected" C1: "Area A" D1: "1970" A2: "767ha" B2: "protected" C2: "Area E" D2: "1966" 

Ich brauche das umformatierte Blatt unabhängig vom Eingabeschema:

A1: "Area A" B1: "protected" C1: "1970" D1: "2652ha" A2: "Area E" B2: "protected" C2: "1966" D1: "767ha" 

In diesem Beispiel muss ich also feststellen, wann "Bereich B" gültig ist, aber dann "geschützt" vs. "ungeschützt" aussortieren und die entsprechende Bereichszelle ("5556ha" oder "1876ha") auf diese Zeile im umformatierten Arbeitsblatt anwenden.

Wie kann ich dieses Zellen-Shuffling erreichen, wenn die eingehende Datenstruktur variiert wird?

0
Gibt es eine erste Zeile auf dem Blatt, die die Spaltennamen enthält? Sonst wird es schwierig werden. Sie können eine manuell hinzufügen. Wenn Sie jeder Datenquelle manuell eine Zeile mit Spaltennamen hinzufügen, sollten Sie die Werte in die Datenbank importieren können. Muss es in eine Tabelle importiert werden? cybernard vor 6 Jahren 0
Wie viele verschiedene Datenquellen gibt es? Nur 2? Unterscheidet sich die Datenanordnung pro Zeile oder Datenquelle? cybernard vor 6 Jahren 0
Ohne Spaltennamen könnten Sie eine VBA-Lösung verwenden, in der Sie bestimmte Muster definieren, mit denen die vier Merkmale eindeutig unterschieden werden können. Dann ist es ziemlich einfach zu sammeln und zu standardisieren, wie sie präsentiert werden sollen. Je nachdem, wie komplex die Muster sind, können Sie den Like-Operator verwenden oder müssen in reguläre Ausdrücke eintauchen. Ron Rosenfeld vor 6 Jahren 0
Ich finde diese Frage verwirrend. (1) Ist meine Bearbeitung richtig? Wenn nicht, habe ich keine Ahnung, was Sie sagen. (2) Wenn meine Bearbeitung richtig ist, können Sie bitte (2a) erklären, was Sie meinen, mit „Ich… muss zwei Zellenwerte auswerten, und wenn die beiden Werte bestimmten Kriterien entsprechen, dann nehmen Sie die dritte Zelle…“ und (2b) ) explizit angeben, nach welchen Kriterien Sie suchen? Sicher, "" geschützt "" vs. "" ungeschützt "" ist ziemlich offensichtlich, aber ist "A" immer "Bereich" plus einen Buchstaben? Ist "C" immer eine vierstellige Zahl? Gibt es ein Muster für die D-Werte? Scott vor 6 Jahren 0
Ja, es gibt Spaltennamen, aber diese Namen werden je nach Schema der einzelnen Datensätze verschoben. Sie sollten alle ziemlich standardisiert sein (z. B. "Name", "Bereich", "Datum", "Status"), aber in einer Datensatzspalte A könnte "Name" stehen, in einer anderen jedoch "Date". user25644 vor 6 Jahren 0
Es gibt mehrere Datensätze in den Hunderten. Die Datenanordnungsdifferenz ist pro Datensatz NICHT pro Zeile. user25644 vor 6 Jahren 0
Muss in eine Kalkulationstabelle eingefügt werden, um in einer einzelnen Zeile pro Datensatz neu formatiert zu werden. Anschließend werden die einzelnen einreihigen Datensätze mit der ArcMap von ESRI verbunden user25644 vor 6 Jahren 0
Zur weiteren Erläuterung der Bewertung: Für jedes Dataset sind zwei Felder erforderlich, um einen Schlüssel zu erstellen, der dann die dritten Daten definiert, die zu ihnen passen sollen. Im obigen Beispiel haben wir also zwei "Area B" -Werte für ein 'Name'-Feld, daher müssen wir auch' Status 'auswerten, um' protected 'von' ungeschützt 'abzugrenzen und in der resultierenden Neuformatierung den richtigen' Area 'mit einzugeben den richtigen 'Status'. Die resultierende einzeilige Neuformatierung hätte also Feld und Werte: 'name_unprotected' = "Area B", "unprotected_area" = "1876ha", 'name_protected' = "Area B", 'protected_area' = "5556ha" user25644 vor 6 Jahren 0
A ist nicht immer "Bereich" plus einen Buchstaben, das war nur für dieses Beispiel. Tatsächliche Werte sind Betriebsbereichsnamen wie "Ghost Creek", "Martin Canyon" usw. C ist nicht immer eine vierstellige Zahl. Da sich das Schema der Spalten von Datensatz zu Datensatz ändert, könnte es "Name", "Bereich" sein. , 'Status' usw. Kein Muster für die D-Werte, da sich das Schema möglicherweise erneut ändert user25644 vor 6 Jahren 0

0 Antworten auf die Frage