Ich habe ein Makro (Schaltfläche Kest eintragen), wo ich durch InputBoxen Zahlen mit Komma eingebe. Bei der ersten InputBox gebe ich den Wert 1065,095 und bei der zweiten 600,61 ein. Dann gebe ich das Datum z.B. 01.08.2023 ein. Wenn ich dann auch OK klicke, kommt der Laufzeitfehler '1004' - Anwendungs- oder objektdefinierter Fehler.
Das Problem liegt glaube ich an der Eingabe von den Zahlen der Inputboxen. Eigentlich sollte er in der Spalt D die Zahl eintragen (mit dem € Format, was er leider nur ohne dem Format macht) und dann in der Zelle L22 eine weitere Zahl, was er gar nicht macht. Wichtig ist, dass bei L22 immer die vorhandene Formel bestehen bleibt und nur um meine Zahl inkl. "+" ergänzt wird.
Danke sehr für den Hinweis. Jetzt kommt die Fehlermeldung nicht mehr und die Zahl wird korrekt in L22 ergänzt. Leider habe ich aber noch immer das Problem, dass zwar in der Spalte D die Zahl eingetragen wird, aber mit einem gelben Rufzeichen (Die Zahl in dieser Zelle ist als Text formatiert oder es ist ein Apostroph vorangstellt). Wie kann ich das Problem noch lösen?
29.08.2023, 11:57 (Dieser Beitrag wurde zuletzt bearbeitet: 29.08.2023, 11:59 von dertommy.)
Die Spalte D ist als Währung formatiert, trotzdem schreibt er mir neben der Zahl ein gelbes Rufzeichen hin.
Anbei nochmals mein aktueller Code:
Code:
Sub Kesteintragen() stück = InputBox("Bitte die Stückanzahl von der Wertpapierabrechnung eintragen: ") If stück = "" Then Exit Sub End If KestGesamt = InputBox("Bitte den gesamten Kestbetrag von der Wertpapierabrechnung eintragen: ") If KestGesamt = "" Then Exit Sub End If KestThomasEinmalzahlung = Round((KestGesamt * 524) / stück, 2) KestBirgitundThomas = Round((KestGesamt * 445) / stück, 2) KestThomasAnspar = KestGesamt - KestThomasEinmalzahlung - KestBirgitundThomas
Buchungsdatum = InputBox("Bitte das Buchungsdatum vom Tagesgeldkonto eintragen: ") If Buchungsdatum = "" Then Exit Sub End If
Moin! Das ! hinter FormulaLocal ist natürlich nur ein Satzzeichen und hat im Code nix zu suchen! ← Satzzeichen Deklariere mal die Variablen! Ich würde auch niemals die InputBox-Funktion, sondern die Application.InputBox-Methode nehmen und ihr gleich den richtigen Typ mitgeben. Die Datei habe ich mir (noch) nicht angesehen.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
29.08.2023, 12:06 (Dieser Beitrag wurde zuletzt bearbeitet: 29.08.2023, 12:07 von BoskoBiati.)
Hi,
außerdem braucht es nirgendwo eine Formel:
Code:
Sub Kesteintragen()
Dim KestGesamt, stück
stück = InputBox("Bitte die Stückanzahl von der Wertpapierabrechnung eintragen: ") If stück = "" Then Exit Sub KestGesamt = InputBox("Bitte den gesamten Kestbetrag von der Wertpapierabrechnung eintragen: ") If KestGesamt = "" Then Exit Sub
Danke für eure Inputs. Ich habe es nun so gelöst, dass die Zahl in der Spalt D richtig als Zahl und nicht als Text eingetragen wird:
Code:
Sub Kesteintragen()
stück = InputBox("Bitte die Stückanzahl von der Wertpapierabrechnung eintragen: ") If stück = "" Then Exit Sub End If KestGesamt = InputBox("Bitte den gesamten Kestbetrag von der Wertpapierabrechnung eintragen: ") If KestGesamt = "" Then Exit Sub End If