Hallo,
gibt es ein Inkrementierbefehl in VB? Like i++ in C, Java…
Wenn nicht, wie inkrementiere ich einen Wert jeweils um 1?
Danke,
Nico
Hallo,
gibt es ein Inkrementierbefehl in VB? Like i++ in C, Java…
Wenn nicht, wie inkrementiere ich einen Wert jeweils um 1?
Danke,
Nico
Hallo, Nico!
gibt es ein Inkrementierbefehl in VB? Like i++ in C, Java…
Wenn nicht, wie inkrementiere ich einen Wert jeweils um 1?
i=i+1
Mathematisch fehlerhafte Gleichungen haben VB noch nie gestört:wink:
Gruß, Manfred
Hallo Nico,
soweit ich weiss gibt es da keinen. aber ich habe mir mal nen Dll getipselt wo ich nuetzliche Routinen drinnen habe. Da habe ich mir auch eine Routine gebastelt die Inkremeniert.
Du kannst dies so machen oder du schreibst die sub halt in ein Modul und machst es öffentlich. da brauchst du nicht immer die laestige Anweisung bsp. i=i+1 zu schreiben, sondern bsp. inc i.
Hier nun die Routine:
Public Sub Inc(ByRef var As Variant, Optional wert)
On Error Resume Next
If IsMissing(wert) Then wert = 1
var = var + wert
End Sub
Dasselbige kannst du zum Beispiel auch mit dem Dekrimentieren machen
Das gute an der Sub ist, das wenn du ihn wiefoilgt aufrufst
Bsp.
dim i as interger
i=1
inc i
so wird der wert um 1 erhöht, rufst du stattdessen die Sub Inc folgendermassen auf „inc i,5“ so wird der wert i um 5 erhöht!
MFG Alex
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hi Alex,
so wird der wert um 1 erhöht, rufst du stattdessen die Sub Inc
folgendermassen auf „inc i,5“ so wird der wert i um 5 erhöht!
das sieht so aus, ist aber nicht das Selbe. In Mascinensprache ist das ein anderer Befehl. C ist ja sehr Maschinennah, deshalb wird da wohl der Increment-Befehl des Prozessors genutzt. Das ist um ein vielfaches schneller.
Gruß, Rainer
Hallo Rainer,
das der befehl unter C schneller ist, das kann ich mir denken.
Die Frage war aber wie man das inkrementieren implentieren kann.
Ich habe mir lieber die Sub geschrieben und kann so werte erhöhen mit bsp.: inc i , also immer schreiben zu muessen i=i+1.
ich denke auch mal das der zeitaufwand der Sub nicht allzusehr laenger ist als i=i+1 und eine schnellere Variante unter Vb kenne ich nicht, es sei denn man tippselt eine Function unter c und macht daraus eine DLL und bindet dann diese ein. Nur muss man da erst einmal c koennen ( was ich net kann) und ob dies auch schneller ist, weiss ich net
MFG Alex
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hi Anno,
ich denke auch mal das der zeitaufwand der Sub nicht allzusehr
laenger ist als i=i+1 und eine schnellere Variante unter Vb
kenne ich nicht,
Ich auch nicht.
es sei denn man tippselt eine Function unter
c und macht daraus eine DLL und bindet dann diese ein. Nur
muss man da erst einmal c koennen ( was ich net kann)
Ich leider auch nicht.
und ob dies auch schneller ist, weiss ich net
Das weiß ich auch nicht, vermute ich aber stark.
Ich hatte die Ursprüngliche Frage nur so verstanden, als wäre genau danach gefragt worden. Der Befehl aus C wurde ja mit angeführt und genau den kenne ich zufällig. Was da passiert weiß ich noch aus alten Zeiten, in denen ich noch auf dem ‚Commodore plus4‘ ;-> Assembler programmiert habe. i=i+1 war da ein längeres Unterprogramm, INC einer der Befehle für den Prozessor, den er am schnellsten bearbeiten konnte. Beide hatte nichts miteinander zu tun. (Vom Ergebnis mal abgesehen) In C ist das wohl ähnlich. In VB steht ein solcher Befehl nicht zur Verfügung.
Gruß, Rainer