ich habe eine liste in die werte eingetragen werden. nun muss ich aber die eingegebene zahl umrechnen, möchte aber nicht auf eine hilfszelle ausweichen.
gruss markus
Alex
Alex
Public Function ne(Wert1 As Double)
ne = Wert1 * 100 / 56
End Function
ne wäre der Funktionsname
Wert1 die Zahl die Du eingibst.
Beide Begriffe kannst Du beliebig ändern.
Gerundet auf drei Stellen würde die Formel
ne = WorksheetFunction.Round(Wert1 * 100 / 56, 3)
lauten.
Hoffe, das hilft Dir.
Alex
So weit so klar.
Innerhalb dieser Tabelle gibst Du dann in die Zellen einfach
= ne(A1) an und als ergebnis bekommst Du a1*100/56 in der Zelle
Alex
Wechsel zur Entwicklungsumgebung: Drücke Alt + F11
, um die Entwicklungsumgebung von Excel zu öffnen.
Modul einfügen: Klicke auf Einfügen
und wähle Modul
.
Füge die Funktion ein: Kopiere folgenden Code in das Modul:
Public Function ne(Wert1 As Double)
ne = Wert1 * 100 / 56
End Function
Formel eingeben: Kehre zurück zu deinem Arbeitsblatt. In der gewünschten Zelle kannst du jetzt die Formel eingeben, z.B. =ne(A1)
, um den Wert in Zelle A1 automatisch umzurechnen.
Fehler: #NAME?
Ursache: Die Funktion wurde nicht korrekt eingefügt.
Lösung: Stelle sicher, dass der VBA-Code ohne Fehler eingegeben wurde.
Fehler: Ergebnis erscheint nicht
Ursache: Die Zelle enthält möglicherweise einen Fehler oder die Funktion wird nicht korrekt aufgerufen.
Lösung: Überprüfe die Eingabe und stelle sicher, dass die Zelle, auf die verwiesen wird, einen gültigen Wert enthält.
Falls du keine VBA-Lösungen verwenden möchtest, kannst du auch die @
-Formel verwenden, um mit Excel-Formeln zu arbeiten. Diese Methode ist einfacher, aber du kannst damit nicht automatisch im Hintergrund rechnen. Zum Beispiel:
=A1 * 100 / 56
Diese Formel musst du jedoch in einer Hilfszelle eingeben, was nicht dem gewünschten Ziel entspricht.
Angenommen, du hast in Zelle A1 einen Wert eingegeben. Du möchtest den Wert umrechnen, ohne eine Hilfszelle zu verwenden. Gib einfach in Zelle B1 die folgende Formel ein:
=ne(A1)
Dies wird den Wert aus A1 nehmen, ihn mit 100 multiplizieren und durch 56 teilen, alles im Hintergrund.
Rundung: Möchtest du das Ergebnis auf eine bestimmte Anzahl von Dezimalstellen runden? Du kannst die Funktion wie folgt anpassen:
Public Function ne(Wert1 As Double)
ne = WorksheetFunction.Round(Wert1 * 100 / 56, 3)
End Function
Excel-Formeln anzeigen: Um die verwendeten Formeln in den Zellen anzuzeigen, kannst du Strg +
(Gravis) drücken.
Verwendung des $
in Excel-Formeln: Wenn du die Formel in andere Zellen kopierst, achte darauf, die richtigen Zellreferenzen zu verwenden, indem du $
verwendest, z.B. =ne($A$1)
.
1. Kann ich die Formel auch ohne VBA verwenden?
Ja, du kannst die Berechnung direkt in einer Zelle mit einer Formel durchführen, aber das erfordert eine Hilfszelle.
2. Wie kann ich sicherstellen, dass die Formel immer aktualisiert wird?
Excel aktualisiert die Formeln automatisch, solange die Zellreferenzen korrekt sind und sich die Eingabewerte ändern.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen