29.08.2017, 07:59
Hallo zusammen,
vielen Dank. Der Code funktioniert!
Grüße
Zofomuko
vielen Dank. Der Code funktioniert!
Grüße
Zofomuko
Abzug Wert über mehrere Zellen
|
29.08.2017, 07:59
Hallo zusammen,
vielen Dank. Der Code funktioniert! Grüße Zofomuko
31.08.2017, 08:02
Hallo,
ich habe heute bei Tests einen Fehler festgestellt, den ich mir nicht erklären kann. Die Zellen mit den Überstunden sind als "Zahl" mit zwei Nackommastellen formatiert. Wenn ich nun mit Nachkommastellen subtrahieren möchte, bleiben die Stellen unberücksichtigt. Wenn ich also rechne 2,34-1,21 wird als Ergebnis 1,34 ausgegeben. Kann mir das jemand erklären? Gruß Zofomuko
31.08.2017, 08:27
Ändern As Integer in As Single
Mfg
31.08.2017, 09:01
Hi,
Die Datentypen Integer und Long sind nur für Ganzzahlen geeignet, wobei man auf Integer eigentlich verzichten kann, da Excel diese intern sowieso in Long umwandelt, bevor sie benutzt werden. Für Dezimalzahlen bieten sich Single oder Double an. http://www.vba-tutorial.de/variablen/datentypen.htm
Gruß
Edgar Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
20.09.2017, 09:30
Hi,
wenn Excel-intern sowieso Integer in Long umgewandelt wird, wird dann auch Single in Double umgewandelt?
Moin Ralf!
Mal abseits der Theorie, warum man Long statt Integer nehmen sollte: (die marginalen Zeit-Unterschiede merkt man nicht wirklich; der Speicherbedarf ist ebenfalls drittrangig) Lasse mal dieses simple Makro laufen und berichte von Deinen vor Schreck geweiteten Augen, wenn Du in den Überlauf rennst. :21: Schaue mal ins Lokalfenster und lasse Dir die Werte der Variablen anzeigen! (Überlauf??? Ich habe doch ausreichend dimensioniert?) Sub Int_Long() Dim i As Integer, k As Integer Dim Ergebnis As Long For i = 1 To 1000 For k = 1 To 1000 Ergebnis = i * k Next Next Debug.Print Ergebnis End Sub 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)
20.09.2017, 10:48
Und ergänzend:
Damit habe ich Edgars Theorie, wonach VBA einen Integer intern in einen Long umwandelt, eindeutig widerlegt! ;)
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)
20.09.2017, 10:59
20.09.2017, 11:25
Hi,
die Theorie ist nicht von mir, ich habe es nur übernommen. Ich weiß nur, dass einige der Koryphäen es immer wieder so veröffentlichen.
Gruß
Edgar Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
20.09.2017, 11:25
(Dieser Beitrag wurde zuletzt bearbeitet: 20.09.2017, 11:26 von BoskoBiati.)
Hi,
Gelöscht
Gruß
Edgar Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen. |
|