Die REST-Funktion – Beispiele in Excel, VBA und Google Sheets

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Zakarya El Oirzadi

Last updated on Juli 26, 2022
Beispielarbeitsmappe herunterladen

Download the example workbook

In diesem Tutorial zeigen wir Ihnen, wie Sie die Funktion REST in Excel und Google Sheets verwenden können, um den Rest einer Division zu berechnen.

rest formel hauptfunktion

 

Die REST-Funktion im Überblick

Die REST-Funktion gibt den Rest bzw. den Modulus einer Zahl nach der Division zurück.

Die REST-Funktion ist jedoch nicht nur dazu da, uns bei unseren Divisionsproblemen zu helfen. Sie ist sogar noch leistungsfähiger, wenn wir nach jedem n-ten Element in einer Liste oder jeder n-ten Zeile suchen oder ein sich wiederholendes Muster erzeugen wollen.

REST – Mathematische Grundlagen

Wenn Sie versuchen, 13 durch 4 zu dividieren, können Sie sagen, dass die Antwort 3 und der Rest 1 ist. Die „1“ ist in diesem Fall als Modulus bekannt. Daher kommt der englische Name der REST-Funktion (MOD). In einer Formel könnte man also Folgendes schreiben:

=REST(13;4)

rest formel grundbeispiel 13 4

Und die Ausgabe wäre 1.

Ein Blick auf diese Tabelle veranschaulicht, wie die Eingabe bzw. Ausgabe von REST funktioniert.

=REST(A2;3)

rest formel grundbeispiel Zellenbezug 3

Beachten Sie, dass es bei der Eingabe von 3 keinen Rest gab und die Ausgabe der Formel daher 0 war. Außerdem haben wir in unserer Tabelle die ZEILE-Funktion verwendet, um unsere Werte zu erzeugen. Ein Großteil der Leistungsfähigkeit von REST ergibt sich aus der Verwendung der ZEILE oder SPALTE-Funktion, wie wir in den folgenden Beispielen sehen werden.

REST-Summe in jeder zweiten Zeile

Betrachten Sie diese Tabelle:

rest formel jede zweite zeile daten

Zur Veranschaulichung zeigen wir Ihnen die Formel, die in der zweiten Spalte enthalten ist:

=REST(A2; 2)

rest formel jede zweite zeile

Um alle geraden Zeilen zu summieren, könnten Sie eine SUMMEWENN-Formel schreiben und das Kriterium nach 0-Werten in Spalte B suchen lassen. Oder, um alle ungeraden Zeilen zu summieren, das Kriterium nach 1-Werten suchen lassen.

Die Hilfsspalte brauchen wir jedoch gar nicht zu erstellen. Sie können die Leistung von REST innerhalb der SUMMENPRODUKT-Funktion kombinieren, um alles in einem Schritt zu erledigen. Unsere Formel hierfür wäre:

=SUMMENPRODUKT(A2:A5; --(REST(B2:B2; 2)=0)

Da sie innerhalb von SUMMENPRODUKT liegt, kann die REST-Funktion unsere Array-Eingabe verarbeiten. Wir haben die Ausgabe bereits in der Hilfsspalte gesehen, aber das Array aus unserer REST-Funktion in dieser Formel wird {0; 1; 0; 1} sein. Nach der Überprüfung auf Werte, die gleich 0 sind und der Anwendung des doppelten Unär-Zeichens, wird das Array {1; 0; 1; 0} entsprechen. SUMMENPRODUKT führt dann ihre Magie aus, indem sie die Felder multipliziert, um {2; 0; 4; 0} zu erzeugen, und dann die Summe bildet, um die gewünschte Ausgabe von 6 zu erhalten.

REST-Summe – Jede n-te Zeile

Da eine Formel mit REST(x; N) bei jedem n-ten Wert eine 0 ausgibt, können wir dies nutzen, um Formeln bei der Auswahl der Werte, die in anderen Funktionen verwendet werden sollen, zu helfen. Sehen Sie sich diese Tabelle an.

rest formel jede n te zeile datentabelle

Unser Ziel ist es, die Werte aus jeder mit „Gesamtsumme“ markierten Zeile zu übernehmen. Beachten Sie, dass die Summe in jeder 3. Zeile erscheint, aber in Zeile 4 beginnt. Unsere REST-Funktion wird also 3 als 2. Argument verwenden und wir müssen 1 vom ersten Argument abziehen (da 4 -1 = 3). Auf diese Weise werden die gewünschten Zeilen (4, 7, 10) Vielfache von 3 sein (3, 6, 9). Unsere Formel für die Summe der gewünschten Werte lautet dann:

=SUMMENPRODUKT(C2:C10; --(REST(ZEILE(A2:A10)+2; 3)=0))

rest formel jede n te zeile summe

Das erzeugte Array wird wie folgt umgewandelt:

{2; 3; 4; 5; 6; 7; 8; 9; 10}
{1; 2; 3; 4; 5; 6; 7; 8; 9}
{1; 2; 0; 1; 2; 0; 1; 2; 0}
{FALSCH; FALSCH; WAHR; FALSCH; FALSCH; WAHR; FALSCH; FALSCH; WAHR}
{0; 0; 1; 0; 0; 1; 0; 0; 1}

Das Kriterien-Array unserer SUMMENPRODUKT-Funktion ist nun so eingerichtet, dass jeder 3. Wert erfasst wird und wir erhalten das gewünschte Ergebnis von $90.

REST-Summe über Spalten

Wir haben bisher Beispiele verwendet, die vertikal verlaufen und ZEILE verwenden, aber Sie können auch horizontal mit der SPALTE-Funktion arbeiten. Betrachten Sie dieses Layout:

rest formel summe ueber spalten datentabelle

Wir wollen die Summe aller Positionen bilden. Unsere Formel dafür könnte wie folgt lauten:

=SUMMENPRODUKT(B2:E2*(REST(SPALTE(B2:E2); 2)=0)

In diesem Fall sind wir so eingestellt, dass wir jede 2. Spalte in unserem Bereich erfassen, so dass SUMMENPRODUKT nur Nicht-Null-Werte für die Spalten B und D beibehält. Als Referenz finden Sie hier eine Tabelle mit den Spaltennummern und dem entsprechenden Wert nach REST 2.

rest formel summe ueber spalten

Jede n-te Zeile markieren

Eine weitere häufige Anwendung der REST-Funktion ist die Hervorhebung jeder n-ten Zeile. Die allgemeine Form hierfür ist:

=REST(ZEILE() ± Verschiebung; N)=0

Dabei ist N die Anzahl der Zeilen zwischen den hervorgehobenen Zeilen (z. B. um jede 3. Zeile hervorzuheben, ist N = 3), und Verschiebung ist optional die Zahl, die addiert oder subtrahiert werden muss, damit die erste hervorgehobene Zeile mit N übereinstimmt (z. B. um jede 3. Zeile hervorzuheben, aber in Zeile 5 zu beginnen, müsste 2 subtrahiert werden, da 5 -2 = 3). Beachten Sie, dass die ZEILE-Funktion die Zeilennummer der Zelle, in der sich die Formel befindet, zurückgibt, wenn Sie keine Argumente angeben.

Verwenden wir unsere Tabelle von vorhin:

rest formel jede n te zeile hervorheben

Um alle Summenzeilen hervorzuheben, erstellen wir eine neue Regel für die bedingte Formatierung mit der folgenden Formel:

=REST(ZEILE()-1; 3)=0

Wenn die bedingte Formatierung diese Formel anwendet, wird in Zeile 2 Folgendes angezeigt:

=REST(2-1; 3)=0
=REST(1; 3) = 0
=1=0
=FALSCH

In Zeile 3 wird eine ähnliche Ausgabe erfolgen, aber in Zeile 4 wird dann Folgendes angezeigt:

=REST(4-1; 3)=0
=REST(3; 3) = 0
=0=0
=WAHR

rest formel jede n te zeile hevorgehoben

 

Ganzzahlen oder gerade Zahlen hervorheben

Anstatt bestimmte Zeilen hervorzuheben, können Sie auch die tatsächlichen Werte in den Zellen überprüfen. Dies kann nützlich sein, wenn Sie Zahlen, die ein Vielfaches von N sind, finden wollen. Um beispielsweise Vielfache von 3 zu finden, würde Ihre Formel für die bedingte Formatierung wie folgt lauten:

=REST(A2; 3)=0

Bis zu diesem Punkt haben wir mit ganzen Zahlen gearbeitet. Sie können jedoch auch eine Dezimalzahl eingeben (z. B. 1,234) und dann durch 1 dividieren, um nur den Dezimalteil zu erhalten (z. B. 0,234). Diese Formel sieht wie folgt aus:

=TEIL(A2; 1)

Um nur ganze Zahlen hervorzuheben, würde die Formel für die bedingte Formatierung wie folgt lauten:

=REST(A2; 1)=0

Alle n-Zellen verketten

Bisher haben wir die REST-Funktion verwendet, um dem Computer mitzuteilen, wann er bei jedem n-ten Element einen Wert erfassen soll. Man könnte sie auch verwenden, um die Ausführung einer größeren Formel auszulösen. Betrachten Sie dieses Layout:

rest formel zellen verketten rohdaten

Wir wollen die Namen miteinander verketten, aber nur in jeder 3. Zeile und beginnend in Zeile 2. Die Formel dafür lautet:

=WENN(REST(ZEILE()+1; 3)=0; VERKETTEN(A2;" "; A3;" "; A4); "")

rest formel zellen verketten

Unsere REST-Funktion fungiert als Kriterium für die gesamte WENN-Funktion. In diesem Beispiel haben wir 1 zu unserer Zeile hinzuaddiert, weil wir in Zeile 2 beginnen (2 + 1 = 3). Wenn die Ausgabe der REST-Funktion 0 ist, führt die Formel die Verkettung durch. Andernfalls gibt sie einfach ein Leerzeichen zurück.

Gerade bzw. ungerade Werte zählen

Wenn Sie schon einmal die Anzahl der geraden oder ungeraden Werte in einem Bereich zählen mussten, wissen Sie, dass ZÄHLENWENN dazu nicht in der Lage ist. Mit REST und SUMMENPRODUKT können wir dies jedoch tun. Schauen wir uns diese Tabelle an:

rest formel zellen anzahl ungerade zellen Datentabelle

Die Formel, die wir verwenden, um die ungeraden Werte zu finden, lautet wie folgt:

=SUMMENPRODUKT(1*(REST(A2:A7; 2)=1))

rest formel zellen anzahl ungerade zellen

Anstatt einige Zeilennummern zu laden, wird unsere REST-Fnktion die tatsächlichen Werte der Zellen in das Array laden. Die Gesamttransformation verläuft dann wie folgt:

{5; 5; 3; 3; 2; 1}
{1; 1; 1; 1; 1; 0; 1} <- Nimmt den Rest von 2
{ WAHR; WAHR; WAHR; WAHR; FALSCH; WAHR } <- Überprüft, ob der Wert 0 ist
{1; 1; 1; 1; 0; 1} <- Multipliziert mit 1, um von Wahr/Falsch in 1/0 umzuwandeln

Die SUMMENPRODUKT-Funktion summiert dann die Werte in unserem Array, was die gewünschte Antwort in Höhe von 5 ergibt.

Sich wiederholendes Muster

In allen bisherigen Beispielen wurde die Ausgabe von REST auf einen Wert geprüft. Sie können REST auch verwenden, um ein sich wiederholendes Zahlenmuster zu erzeugen, was wiederum sehr hilfreich sein kann. Nehmen wir zunächst an, wir hätten eine Liste von Elementen, die wiederholt werden sollen.

rest formel muster vermehrfachen meine liste

Sie könnten versuchen, sie manuell zu kopieren und einzufügen, so oft wie Sie sie brauchen, aber das wäre aufwändig. Stattdessen werden wir die INDEX-Funktion verwenden, um unsere Werte abzurufen. Damit die INDEX-Funktion funktioniert, muss das Zeilenargument eine Zahlenfolge wie die Folgende sein: {1; 2; 3; 1; 2; 3; 1 usw.}. Dies können wir mit REST erreichen.

Zunächst beginnen wir mit der ZEILE-Funktion. Wenn Sie mit der folgenden Formel beginnen:

=ZEILE(A1)

Und diese dann nach unten kopieren, erhalten Sie die grundlegende Zahlenfolge {1; 2; 3; 4; 5; 6; …}. Wenn wir die REST-Funktion mit 3 als Divisor anwenden,

=REST(ZEILE(A1); 3)

würden wir {1; 2; 0; 1; 2; 0; …} erhalten. Wir sehen, dass wir ein sich wiederholendes Muster von „0, 1, 2“ haben, aber in der ersten Reihe fehlt die anfängliche 0. Um dies zu korrigieren, gehen Sie einen Schritt zurück und subtrahieren 1 von der Zeilennummer. Dadurch ändert sich unsere Anfangssequenz in {0; 1; 2; 3; 4; 5; …}

=REST(ZEILE(A1)-1; 3)

Und nach dem Austritt aus der REST-Funktion haben wir {0; 1; 2; 0; 1; 2; …}. Das kommt dem, was wir brauchen, schon sehr nahe. Der letzte Schritt besteht darin, dem Array eine 1 hinzuzuaddieren.

=REST(ZEILE(A1)-1; 3)+1

Das ergibt nun eine Zahlenfolge von {1; 2; 3; 1; 2; 3; …}. Dies ist unsere gewünschte Folge! Wenn wir sie in eine INDEX-Funktion einfügen, erhalten wir die folgende Formel:

=INDEX(MeineListe; REST(ZEILE(A1)-1; 3)+1)

Die Ausgabe sieht nun wie folgt aus:

rest formel muster vermehrfachen

 

REST-Beispiele in VBA

Sie können die MOD-Funktion auch in VBA verwenden.

In VBA ist REST ein Operator (genau wie die Operatoren Plus, Minus, Multiplikation und Division). Wenn Sie also die folgenden VBA-Anweisungen ausführen

Range("C2") = Range("A2") Mod Range("B2")
Range("C3") = Range("A3") Mod Range("B3")
Range("C4") = Range("A4") Mod Range("B4")
Range("C5") = Range("A5") Mod Range("B5")
Range("C6") = Range("A6") Mod Range("B6")
Range("C7") = Range("A7") Mod Range("B7")

ergibt die folgenden Ergebnisse:

rest formel vba ausgabe

Die Funktionsargumente (Zahl, usw.) können Sie entweder direkt in die Funktion eingeben oder Variablen definieren, die Sie stattdessen verwenden.

Die REST-Funktion in Google Sheets

Die REST-Funktion funktioniert in Google Sheets genau so wie in Excel:

rest formel google sheets

AI Formula Generator

Gratis testen

Excel Practice Worksheet

practice excel worksheet

Practice Excel functions and formulas with our 100% free practice worksheets!

  • Automatically Graded Exercises
  • Learn Excel, Inside Excel!

Free Download

Return to List of Excel Functions