Ich habe mehr als 10.000 Datenzeilen, die ich für eine Datenspalte berechnen muss. Ich habe die Berechnung in einer Zelle durchgeführt und muss nun die Formel für die Berechnung und alle Zellen ausfüllen.
Normalerweise wähle ich die Zellen einfach mit der Tastatur aus und drücke dann das Ctrl+ D, um die Zellen zu füllen. Jetzt muss ich dies jedoch wiederholt ausführen, und es ist schwierig, weiterhin 5000 Zeilen pro Datei auszuwählen. Gibt es eine einfachere Möglichkeit, den Bereich einfach über die Tastatur festzulegen? Vielleicht haben Sie sogar ein Makro, da alle Dateien eine feste Länge haben
Da ich aus medizinischen Gründen Schwierigkeiten habe, die Maus zu verwenden, habe ich diese spezielle Lösung , bei der auf einen sehr kleinen Füllgriff geklickt wird, nicht getestet . Möglicherweise gibt es eine parallele Lösung für dieses Problem mithilfe der Tastatur, oder ich kann ein Makro erstellen, das automatisch auf einen Füllpunkt einer ausgewählten Zelle klickt. Bitte geben Sie an, ob es einen Weg gibt.
Antworten:
Angenommen, die Daten befinden sich in Spalte
A
und die Formel in SpalteB
:B1
B1
A
B
).quelle
Duplikate:
Sie müssen jedoch nicht einmal alle Zellen mit der Formel füllen. Die Verwendung einer Matrixformel mit mehreren Ergebnissen wäre besser. Geben Sie einfach die Formel wie gewohnt ein, aber ersetzen Sie die Zellen durch den Bereich (z . B.
B1
mitB1:B10000
. Das ist etwas vereinfacht, aber das ist die Idee, lesen Sie weiter unten für weitere Details) und drücken SieCtrlShiftEnter dann + + . Die Formel wird dann sofort auf alle Zellen in der Tabelle angewendet, und es sind nur wenige Tastenanschläge erforderlichDie Array-Formel ist auch schneller, da das Zugriffsmuster bereits bekannt ist. Anstatt nun elf verschiedene Berechnungen separat durchzuführen, können diese unter Verwendung mehrerer Kerne und SIMD-Einheiten in der CPU vektorisiert und parallel ausgeführt werden
Wenn Sie beispielsweise möchten, dass die Zellen in Spalte D das Produkt der Zellen in B und C enthalten und Spalte E die Summe von B und C enthält, müssen Sie anstelle von
D1 = B1*C1
undE1 = B1 + C1
und nach unten die folgenden Formeln in D1 bzw. E1 einfügen und drücken Ctrl+ Shift+EnterIn Google Sheet müssen Sie die
ARRAYFORMULA
Funktion anstelle der Verknüpfung wie in Excel verwendenDanach wird die Formel automatisch auf die gesamte Spalte angewendet, ohne etwas zu ziehen.
X:X
verweist auf Spalte X. Wenn Sie nur von Zeile 3 bis zur Endverwendung einbeziehen möchtenX3:X
. Oder wenn Sie das Ergebnis nur für Zellen von X3 bis X10003 berechnen möchten, verwenden SieX3:X10003
. Dieselbe Syntax kann für Zeilen verwendet werden, dh 1: 1 für Zeile 1. Hier ist ein weiteres Beispiel aus der Excel-Dokumentation, das das Produkt in jeder Spalte berechnetMatrixformel ist ein sehr leistungsfähiges Werkzeug. Verwenden Sie es jedoch mit Vorsicht. Jedes Mal, wenn Sie es bearbeiten müssen, dürfen Sie nicht vergessen, Ctrl+ Shift+ zu drückenEnter
Weitere Informationen finden Sie unter Erstellen einer Matrixformel . Siehe auch
Wenn Sie immer noch eine normale Formel verwenden möchten, verwenden Sie Ctrl+ Enteranstelle von Ctrl+ Shift+ Enter. Es füllt die Formel mit allen Zellen in der Auswahl und ändert die Zellreferenzen nach Bedarf
quelle
Drücken Sie
ALT
+F11
, um den VBA-Bildschirm zu öffnen. Dieser Code sollte die Formel kopieren. Ändern Sie einfach den Bereich in die richtigen ZellenBearbeiten
Oder fügen Sie die Formel einfach mit VBA hinzu
quelle