Microsoft Excel

Herbers Excel/VBA-Archiv

Konvertierung String in Int

Betrifft: Konvertierung String in Int von: Tobias
Geschrieben am: 06.09.2004 13:34:01

hallo,

ich habe folgendes Problem. Ich bekomme als result einer function einen string, der zahlen enthällt. Diese zahlenreihe habe ich erfolgreich in ein Arry gepackt. Das dumme ist nur das er wenn ich das array jetzt sortieren will nichts damit anfangen kann weil es für ihn ja strings sind. Also hab ich mir gedacht könnte man doch das ganze in integer zahlen konvertieren.

Dim temp() as string
dim temp2() as integer

For lauf = 0 To UBound(temp)
temp2(lauf) = CInt(temp(lauf))
Next

jetzt bringt er den fehler Subscipt out of Range und zwar temp2.

wenn der string nur aus zahlen besteht kann man ihn doch per Cint konvertieren oder nicht???? Wo liegt da der denkfehler??

mfg
Tobias

  


Betrifft: AW: Konvertierung String in Int von: nighty
Geschrieben am: 06.09.2004 13:48:38

hi tobias :)

vielleicht so :))

gruss nighty

Dim temp(index) as string
dim temp2(index) as long
dim lauf as long

For lauf = 0 To UBound(temp)
temp2(lauf) = Val(temp(lauf))
Next


  


Betrifft: AW: Konvertierung String in Int von: Tobias
Geschrieben am: 06.09.2004 14:12:00

Hi Nighty,

Val geht nur wenn die zahlen an kommastelle einen "." haben. Wenn da ein "," drinnen ist geht das nicht mehr, da muss man dann Cdbl nehmen.

mfg
tobias


  


Betrifft: AW: Konvertierung String in Int von: Bert
Geschrieben am: 06.09.2004 13:51:12

temp2 ist nicht dimensioniert!

Bert


  


Betrifft: AW: Konvertierung String in Int von: Tobias
Geschrieben am: 06.09.2004 14:10:11

Hallo Bert,

das die arrays nicht dimensioniert sind soll so sein, es soll ja auch dynamisch in der Größe sein.

Temp wurde folgender maßen gefüllt:

temp() = Split(textbox_all_time.text, ";", , vbTextCompare)

split legt dann die größe von Temp fest. Jetzt würde ich halt nur die zahlen konvertiert in das 2te array schreiben wollen.

mfg
Tobias


  


Betrifft: AW: Konvertierung String in Int von: Bert
Geschrieben am: 06.09.2004 14:17:44

Temp2 muss aber dimensioniert sein oder als Variant- Array, dann aber ohne ()

Bert


  


Betrifft: hat sich gelöst von: Tobias
Geschrieben am: 06.09.2004 14:30:05

counter = UBound(temp)
ReDim temp2(counter)


diese beiden zeilen bringen die dimensionierung und ich kann das array als int deklariert lassen.

mfg
tobias


  


Betrifft: AW: hat sich gelöst von: Bert
Geschrieben am: 06.09.2004 14:48:38

Sag ich doch muss dimensioniert werden!

Bert


  


Betrifft: AW: hat sich gelöst von: Tobias
Geschrieben am: 06.09.2004 15:08:06

Aber warum???

warum checkt das das array bei der splitfunktion??? Dasist auchnicht vorher dimensioniert??

mfg
Tobias


 

Beiträge aus den Excel-Beispielen zum Thema "Konvertierung String in Int"