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

Mehrwertsteuer für ausgewählten Betrag bzw. Zelle

Forumthread: Mehrwertsteuer für ausgewählten Betrag bzw. Zelle

Mehrwertsteuer für ausgewählten Betrag bzw. Zelle
22.03.2005 10:37:49
Dirk
Guten Morgen zusammen,
kann mir jemand den VBA-Code geben, mit dem ich zu dem Wert einer ausgewählten Zelle die Mehrwertsteuer draufrechnen und den Gesamtbetrag dann 2-3 Zeilen tiefer (oder auch durch Zellauswahl) einfügen kann?
Die Zelle, für welche die Mwst-Berechnung stattfinden soll, muss (durch Mausklick) wählbar sein und wenn die gewählte Zelle leer ist, wäre eine MesgBox mit Fehlermeldung nicht schlecht.
Ist eigentlich keine schwere Sache, ich weiss. Aber hab noch Probleme es nicht auf Zellen zu fixieren, also dass die gewählte Zelle (die immer eine andere ist) zur Berechnung genommen wird.
Ich danke euch schon mal im Voraus für alle LÖsungen und es dürfen gerne auch mehr sein.
Liebe Grüße,
Dirk
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrwertsteuer für ausgewählten Betrag bzw. Zelle
22.03.2005 10:49:07
Andi
Hi,
probier mal das hier:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo errorhandler
If Target.Value = "" Then
MsgBox "Die ausgewählte Zelle ist leer"
Exit Sub
End If
Cells(Target.Row + 2, Target.Column).Value = Target.Value * 1.16
Exit Sub
errorhandler:
If Err = 13 Then
MsgBox "Bitte wählen Sie eine Zelle mit einer Zahl aus"
Else
MsgBox "Unbekannter Fehler"
End If
End Sub

Schönen Gruß,
Andi
Anzeige
Nachtrag
22.03.2005 11:16:29
Andi
Hi nochmal,
wenn Du die Ziel-Zelle auswählen möchtest, kannst Du das mit folgendem Code per Inputbox machen (hab ich mit Hilfe der Herber-VBA-Beispiele gebastelt, die Eingabe einer Zelle per Inputbox ist leider nicht auf meinem eigenen Mist gewachsen)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo errorhandler
Dim ziel As Range
If Target.Value = "" Then
MsgBox "Die ausgewählte Zelle ist leer"
Exit Sub
End If
Set ziel = Application.InputBox("In welche Zelle soll das Ergebnis geschrieben werden?", Type:=8)
ziel.Value = Target.Value * 1.16
Exit Sub
errorhandler:
If Err = 13 Then
MsgBox "Bitte wählen Sie eine Zelle mit einer Zahl aus"
Else
MsgBox "Unbekannter Fehler"
End If
End Sub

Schönen Gruß,
Andi
Anzeige
AW: Nachtrag
22.03.2005 13:30:29
Dirk
Hallo Andi,
leider bekomme ich folgenden Fehler bezüglich der ersten Zeile:
Mehrdeutiger Name: Worksheet_SelectionChange.
Muss ich außerdem das Private Sub immer in einem "normalen" Sub aufrufen, oder geht das auch direkt. Es wird sonst nicht als Prozedur erkannt.
Gruß, Dirk
AW: Nachtrag
22.03.2005 14:12:39
Andi
Hi,
wo hast Du denn den Code hinkopiert? Er gehört in das Modul des betreffenden Tabellenblatts, und wird dann automatisch jedesmal abgearbeitet, wennn eine neue Zelle angeklickt wird. Einen extra Aufruf brauchst Du dann nicht mehr.
Schönen Gruß,
Andi
Anzeige
AW: Nachtrag
22.03.2005 14:25:36
Dirk
Hallo Andi.
Ich wusste nicht, dass es eine interne Routine ist, aber hab es jetzt hinbekommen und es funktioniert auch so wie ich es mir vorgestellt habe.
Nur will ich die Funktion erst durch einen Button aufrufen (und nicht immer), doch hab ich das noch nicht ganz hinbekommen. Vielleicht kannst du mir noch weiterhelfen. Momentan sieht es so aus:
=========================================

Private Sub CommandButton1_Click()
'On Error GoTo errorhandler
Dim target As Range
Dim ziel As Range
target = ActiveSheet.Cells  >> Hier gibt es allerdings eine Fehlermeldung!
If target.Value = "" Then
MsgBox "Die ausgewählte Zelle ist leer"
Exit Sub
End If
Set ziel = Application.InputBox("In welche Zelle soll das Ergebnis geschrieben werden?", Type:=8)
ziel.Value = target.Value * 1.16
Exit Sub
errorhandler:
If Err = 13 Then
MsgBox "Bitte wählen Sie eine Zelle mit einer Zahl aus"
Else
MsgBox "Unbekannter Fehler"
End If
End Sub

================================================
Wäre super, wenn du mir da noch helfen könntest.
Gruß, Dirk
Anzeige
AW: Nachtrag
22.03.2005 15:08:17
Andi
Hi,
soweit ich weiss, kann man, während die Routine eines CommandButton abgearbeitet wird, keine Zellen anklicken (eventuelle Mitleser mögen mich ggf gern eines besseren belehren...). Ich hab's deshalb über ne Checkbox gelöst (die Du natürlich noch auf Dein Arbeitsblatt einfügen musst). Wenn die Checkbox angeklicht ist, dann wird der Code ausgeführt, wenn sie nicht angeklickt ist, passiert nix.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo errorhandler
Dim ziel As Range
If CheckBox1.Value = False Then Exit Sub
If Target.Value = "" Then
MsgBox "Die ausgewählte Zelle ist leer"
Exit Sub
End If
Set ziel = Application.InputBox("In welche Zelle soll das Ergebnis geschrieben werden?", Type:=8)
ziel.Value = Target.Value * 1.16
Exit Sub
errorhandler:
If Err = 13 Then
MsgBox "Bitte wählen Sie eine Zelle mit einer Zahl aus"
Else
MsgBox "Unbekannter Fehler"
End If
End Sub

Ich hoffe, das hilft Dir.
Schönen Gruß,
Andi
Anzeige
AW: Nachtrag
22.03.2005 15:26:46
Dirk
Hi,
ist nicht schlecht so und funktioniert, aber ist halt schon etwas umständlich.
Ginge es denn wenn man das erste Beispiel nimmt und den Betrag einfach 2 Zellen unter der ausgewählten Zelle einfügt?
Die Zelle zur Berechnung wird dann vor dem Button ausgewählt.
Hoff ich höre nochmal von dir.
Gruß, Dirk
Anzeige
AW: Nachtrag
22.03.2005 15:36:40
Andi
Hi,
ja, das geht, und zwar so:
Private Sub CommandButton1_Click()
On Error GoTo errorhandler
If Selection.Value = "" Then
MsgBox "Die ausgewählte Zelle ist leer"
Exit Sub
End If
Cells(Selection.Row + 2, Selection.Column).Value = Selection.Value * 1.16
Exit Sub
errorhandler:
If Err = 13 Then
MsgBox "Bitte wählen Sie eine Zelle mit einer Zahl aus"
Else
MsgBox "Unbekannter Fehler"
End If
Schönen Gruß,
Andi
Anzeige
AW: Nachtrag
22.03.2005 16:08:03
Dirk
Hallo.
Super. Ich glaub das ist die feinere Lösung. Damit kann ich mich anfreunden ;-)
Vielen Dank.
Gruß, Dirk
Gern geschehen... (ot)
22.03.2005 16:43:40
Andi
.
Anzeige
Anzeige

Infobox / Tutorial

Mehrwertsteuer in Excel berechnen und abziehen


Schritt-für-Schritt-Anleitung

Um die Mehrwertsteuer für einen ausgewählten Betrag in Excel zu berechnen und den Gesamtbetrag in eine andere Zelle einzufügen, kannst du den folgenden VBA-Code verwenden:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge einen neuen Button in dein Arbeitsblatt ein (Entwicklertools > Einfügen > Schaltfläche).
  3. Doppelklicke auf den Button, um das Codefenster zu öffnen.
  4. Kopiere und füge den folgenden Code ein:
Private Sub CommandButton1_Click()
    On Error GoTo errorhandler
    If Selection.Value = "" Then
        MsgBox "Die ausgewählte Zelle ist leer"
        Exit Sub
    End If
    Cells(Selection.Row + 2, Selection.Column).Value = Selection.Value * 1.16
    Exit Sub
errorhandler:
    If Err = 13 Then
        MsgBox "Bitte wählen Sie eine Zelle mit einer Zahl aus"
    Else
        MsgBox "Unbekannter Fehler"
    End If
End Sub
  1. Schließe den VBA-Editor und teste den Button, indem du eine Zelle mit einem Betrag auswählst und dann den Button klickst. Der Gesamtbetrag mit Mehrwertsteuer wird zwei Zellen darunter eingefügt.

Häufige Fehler und Lösungen

  • Fehler: "Die ausgewählte Zelle ist leer"

    • Stelle sicher, dass du eine Zelle mit einem Betrag ausgewählt hast, bevor du den Button klickst.
  • Fehler: "Bitte wählen Sie eine Zelle mit einer Zahl aus"

    • Überprüfe, ob der Wert in der gewählten Zelle tatsächlich eine Zahl ist.
  • Fehler: "Unbekannter Fehler"

    • Dieser Fehler kann auftreten, wenn etwas Unerwartetes im Code passiert. Überprüfe deine Eingaben und die Logik des Codes.

Alternative Methoden

Neben der Verwendung von VBA kannst du auch Excel-Formeln nutzen, um die Mehrwertsteuer abziehen oder berechnen. Hier sind einige nützliche Formeln:

  • Mehrwertsteuer abziehen:

    =A1/(1+0.16)

    Diese Formel berechnet den Nettobetrag, wenn in A1 der Bruttobetrag mit 16% Mehrwertsteuer steht.

  • Mehrwertsteuer draufrechnen:

    =A1*1.16

    Damit kannst du die Mehrwertsteuer auf einen Nettobetrag in Zelle A1 addieren.


Praktische Beispiele

  1. Wenn in Zelle A1 der Betrag 100 steht und du die Mehrwertsteuer darauf berechnen möchtest, kannst du die Formel =A1*1.16 in Zelle A2 verwenden. Das Ergebnis wird 116 sein.
  2. Um den Nettobetrag von 116 zu berechnen, verwende die Formel =A2/(1+0.16) in Zelle A3. Das Ergebnis wird wieder 100 sein.

Tipps für Profis

  • Du kannst die Mehrwertsteuer abziehen oder berechnen, indem du die Formeln in einer Excel-Tabelle verknüpfst und automatisierst.
  • Nutze Excel-Datenvalidierung, um sicherzustellen, dass nur gültige Zahlen eingegeben werden können.
  • Experimentiere mit den Excel-Vorlagen zur Umsatzsteuerberechnung, die viele nützliche Funktionen bieten.

FAQ: Häufige Fragen

1. Wie kann ich die Mehrwertsteuer für unterschiedliche Steuersätze berechnen? Du kannst die Steuersätze in einer separaten Zelle speichern und in deinen Formeln darauf verweisen. Zum Beispiel: =A1*(1+B1), wobei B1 den Steuersatz enthält.

2. Kann ich die Berechnung auch ohne VBA durchführen? Ja, du kannst die Umsatzsteuer direkt in den Zellen mit Formeln berechnen, wie oben beschrieben.

3. Wie kann ich die Berechnung auf mehrere Zellen gleichzeitig anwenden? Verwende Excel-Formeln und ziehe die Füllkästchen, um die Formeln auf andere Zellen anzuwenden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige