Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA: Division mit Rest

Forumthread: VBA: Division mit Rest

VBA: Division mit Rest
14.11.2002 09:07:33
Christian
Ich möchte eine Division mit VBA durchführen, bei der der Rest ausgerechnet wird:
Zb: 200 dividiert durch 11 ergibt einen Rest von 2
Wie kann ich diesen Rest berechnen?

Danke!

MfG
Christian

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: VBA: Division mit Rest
14.11.2002 09:19:26
JRobert
Hallo Christian
aus VBA Hilfe:
Dim Ergebnis
Ergebnis = 10 Mod 5 ' Liefert 0.
Ergebnis = 10 Mod 3 ' Liefert 1.
Ergebnis = 12 Mod 4.3 ' Liefert 0.
Ergebnis = 12.6 Mod 5 ' Liefert 3.

grüß Robert

Anzeige
;
Anzeige

Infobox / Tutorial

Division mit Rest in Excel VBA


Schritt-für-Schritt-Anleitung

Um eine Division mit Rest in Excel VBA durchzuführen, kannst du die Modulo-Funktion verwenden. Hier ist eine einfache Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (dein Arbeitsblattname)" und wähle "Einfügen" > "Modul".

  3. Kopiere und füge den folgenden Code in das Modul ein:

    Sub DivisionMitRest()
       Dim dividend As Integer
       Dim divisor As Integer
       Dim rest As Integer
    
       dividend = 200
       divisor = 11
       rest = dividend Mod divisor
    
       MsgBox "Der Rest von " & dividend & " geteilt durch " & divisor & " ist: " & rest
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Drücke ALT + F8, wähle "DivisionMitRest" aus und klicke auf "Ausführen".

Du wirst eine Meldung sehen, die den Rest der Division anzeigt.


Häufige Fehler und Lösungen

  • Fehler: "Typen sind inkompatibel"

    • Lösung: Stelle sicher, dass die Variablen dividend und divisor als Integer deklariert sind, wenn du mit ganzen Zahlen arbeitest.
  • Fehler: "Division durch Null"

    • Lösung: Überprüfe, ob der Divisor gleich Null ist, um eine Division durch Null zu vermeiden.

Alternative Methoden

Neben der Verwendung der Modulo-Funktion kannst du auch die ganzzahlige Division in VBA verwenden. Dabei wird der Quotient ohne Rest berechnet:

Sub GanzzahligeDivision()
    Dim dividend As Integer
    Dim divisor As Integer
    Dim quotient As Integer

    dividend = 200
    divisor = 11
    quotient = dividend \ divisor 'Ganzzahlige Division

    MsgBox "Der Quotient von " & dividend & " geteilt durch " & divisor & " ist: " & quotient
End Sub

Praktische Beispiele

  1. Beispiel für die Berechnung des Rests:

    Sub RestBerechnen()
       Dim a As Integer
       Dim b As Integer
       Dim rest As Integer
    
       a = 15
       b = 4
       rest = a Mod b
    
       MsgBox "Der Rest von " & a & " geteilt durch " & b & " ist: " & rest
    End Sub
  2. Beispiel für die Verwendung in einer Schleife:

    Sub RestMitSchleife()
       Dim i As Integer
       For i = 1 To 10
           MsgBox "Der Rest von " & i & " geteilt durch 3 ist: " & i Mod 3
       Next i
    End Sub

Tipps für Profis

  • Verwende die Debug.Print-Anweisung, um den Rest oder die Ergebnisse in der Immediate Window zu überprüfen, anstatt immer ein MsgBox zu nutzen.
  • Achte darauf, die Datentypen korrekt zu wählen. Für sehr große Zahlen kann es sinnvoll sein, Long statt Integer zu verwenden.
  • Wenn du häufig Divisionen mit Rest durchführst, erstelle eine eigene Funktion, die du wiederverwenden kannst.

FAQ: Häufige Fragen

1. Wie berechne ich den Rest einer Division in Excel ohne VBA? Du kannst die Formel =REST(A1, B1) in Excel verwenden, um den Rest von A1 geteilt durch B1 zu berechnen.

2. Gibt es einen Unterschied zwischen Mod und der Excel-REST-Funktion? Beide liefern das gleiche Ergebnis, jedoch wird Mod in VBA verwendet, während die REST-Funktion in Excel-Formeln verwendet wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige