Registriert seit: 08.07.2016
Version(en): 2016
23.04.2017, 13:47
hi,
wie mache ich das in VBA, dass in Feld A1 eine 1 addiert wird zum aktullen Inhalt?
Sub Plus()
Range("A1").Value = Range("A1") + 0,5
End Sub
...gibt leider einen Fehler aus.
lieben Dank
Julia :)
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo Julia,
heute mal etwas einfaches, das ist schön.
snb sagt immer VBA spricht englisch.
Heißt was bei uns mit Komma geschrieben wird, wird in VBA mit Punkt und umgekehrt geschrieben.
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28
• o0Julia0o
Registriert seit: 28.05.2014
Version(en): 2013 / 2016
23.04.2017, 13:58
(Dieser Beitrag wurde zuletzt bearbeitet: 23.04.2017, 13:58 von GMG-CC.)
Moin,
erstens sagst du, dass der Wert 1 addiert werden soll und schreibst im Code 0,5.
Zweitens: VBA speaks US. So you have to write
Code:
Range("A1").Value = Range("A1") + 0.5
or
Range("A1") = Range("A1") + 0.5
with a dot and not a comma as a decimal delimiter.
Und sorry, meine letzte Englisch-Stunde war vor über 55 Jahren, falls das nicht so ganz "modern" war :05:
Beste Grüße
Günther
Excel-ist-sexy.de …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Folgende(r) 1 Nutzer sagt Danke an GMG-CC für diesen Beitrag:1 Nutzer sagt Danke an GMG-CC für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
vor 55 Jahren - lol. Gab es da schon Englisch ^^
Hat funktioniert. Ja, die 0,5 waren falsch. Ich habe 2-3 solcher Stellen und habe verschiedenes probiert dann, weil ich immer Fehler erhalten hatte wegen dem ",". Da war auch dann mal 0,5 als Wert dazwischen. Falsch rüberkopiert hierher.
danke euch!
Registriert seit: 08.07.2016
Version(en): 2016
Ich möchte jetzt, dass es nur um 1 erhöht wird, wenn der Wert in A1 größer als 0 ist.
Sub Plus()
If Range("A1").Value > 0
Range("A1").Value = Range("A1") + 1.0
Else
End Sub
So funktioniert aber auch das nicht.
Registriert seit: 28.05.2014
Version(en): 2013 / 2016
23.04.2017, 14:30
(Dieser Beitrag wurde zuletzt bearbeitet: 23.04.2017, 14:30 von GMG-CC.)
Wenn ich die IF- Bedingung richtig schreibe, DANN läuft das auch richtig und ohne Fehlermeldung bid zum ENDE.
Weißt du eigentlich, dass es auch in VBA eine F1-Taste gibt?
Beste Grüße
Günther
Excel-ist-sexy.de …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Folgende(r) 1 Nutzer sagt Danke an GMG-CC für diesen Beitrag:1 Nutzer sagt Danke an GMG-CC für diesen Beitrag 28
• o0Julia0o
Registriert seit: 04.03.2015
Version(en): 2000 + meist 2010
23.04.2017, 14:35
(Dieser Beitrag wurde zuletzt bearbeitet: 23.04.2017, 14:40 von lupo1.)
GMG-CC wollte sagen: Else hat heute frei. Es ist Sonntag.
Sub Plus()
If Range("A1").Value > 0
Range("A1").Value = Range("A1") + 1.0
Else
End Sub
geht auch als
Sub Plus(): [A1] = [A1] - ([A1] > 0): End Sub
Folgende(r) 1 Nutzer sagt Danke an lupo1 für diesen Beitrag:1 Nutzer sagt Danke an lupo1 für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
23.04.2017, 14:39
(Dieser Beitrag wurde zuletzt bearbeitet: 23.04.2017, 14:39 von o0Julia0o.)
Ohja, ein "then" hat gefehlt. Und das End If. Danke!
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Julia,
schaue Dir aber unbedingt noch die Lösung von lupo1 an.
Sub test()
range("a1").value = range("a1").value - (range("a1").value > 0)
End Sub
Habs hier etwas länger geschrieben. Wenn es um 1 geht, funktioniert das so. VBA bringt bei True -1 und bei False 0. Um eins bei zutreffender Bedingung zu addieren, brauchst Du also nur die -1 abzuzuiehen
Willst Du andere Zahlen verrechnen, dann im Prinzip so
1 - (x * (1 > 0))
wobei die 1 hier für Dein A1 steht.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• o0Julia0o
Registriert seit: 08.07.2016
Version(en): 2016
oh, geht ja auch ohne Else. Aber - A1.value geht nicht, da ich 1 abziehen möchte oder auch 0,5. Je nach Feld. Und in A1 steht dann das Ergebnis, also z.B. "3".