Ich versuche, einem Kollegen bei der Halbautomatisierung einer Aufgabe zu helfen. Ich muss zwei Arbeitsblattdaten in einem Arbeitsblatt kombinieren. Nennen wir diese A, B und C für die kombinierte. Daten werden von zwei verschiedenen Standorten in A und B kopiert und eingefügt. Die Daten haben ein ähnliches Format, aber nur zwei Felder müssen sich in Arbeitsblatt C befinden.
Ich möchte, dass mein Mitarbeiter die Daten aus ihren Quellen in die Arbeitsblätter A und B einfügt und dann die beiden Felder in Arbeitsblatt C überführt.
Die Daten von A und B variieren in der Anzahl der Zeilen. Derzeit werden die Daten durch eine einfache Referenz ( =worksheetA!B2
) für jedes Feld abgerufen und müssen manuell verglichen werden, da die Zeilen jedes Mal variieren, wenn die Daten kombiniert werden müssen.
Gibt es eine Möglichkeit, dies einfach durch eine Formel zu tun, oder muss ich ein Skript erstellen?
Bearbeiten 1: Auf Anfrage finden Sie hier eine Beispieltabelle.
Bearbeiten 2: Auf Anfrage sind hier einige Beispieldaten:
Arbeitsblatt A.
Something else something different
a 37 58.2
asdf 4345 345.3
sdflv 234 233.2
Arbeitsblatt B.
Something else
ASDFASD 43
EE# 5646
VVBG 234
$#GG 4344
Arbeitsblatt C.
Something else
a 37
asdf 4345
sdflv 234
ASDFASD 43
EE# 5646
VVBG 234
$#GG 4344
quelle
Antworten:
Kurze Antwort
Verwenden Sie Arrays, die auf die Spaltenüberschriften und alle Zeilen der gewünschten Spalten verweisen, und filtern Sie sie:
Erläuterung
Google Tabellen festlegen können ,
arrays
durch Einschließen der Werte zwischen Klammern{
,}
. Wenn Ihre Tabelle Punkt.
als Dezimaltrennzeichen verwendet, verwenden Sie Komma,
zum Trennen von Spalten und Semikolon;
zum Trennen von Zeilen. Verwenden Sie andernfalls ein Semikolon zum Trennen von Spalten und einen Backslash\
als Zeilentrennzeichen.In der vorgeschlagenen Formel hat das Array drei Wertesätze
A!A1:B1
wird verwendet, um die Spaltenüberschriften abzurufenA!A2:B
,B!A2:B
Werden verwendet , um alle Zellen in den Spalten A und B die Arbeitsblatt A & B aus der zweiten Reihe bis zur letzten Reihe zu erhalten.QUERY()
Funktion wird verwendet, um die Werte zu filtern, um zu vermeiden, dass die leeren Zellen in das Endergebnis aufgenommen werden.Verweise
quelle
Where Col1<>''
. Sie können weitere Kriterien hinzufügen und einige andere SQL-Operatoren verwenden. Haben Sie sich bereits den Hilfeartikel QUERY () angesehen?