Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Codeberichtigung
#1
Hallo alle zusammen,

ich habe im Internet einige kleinere Codebeispiele gefunden, die mich interessieren und ich mir Schritt für Schritt mit der F8 Taste anschauen möchte:

Code:
Function CharacterArray(value As String)
   value = StrConv(value, vbUnicode)
   CharacterArray = Split(Left(value, Len(value) - 1), vbNullChar)
End Function

Sub example1()
   Dim d As String
   Dim myArray()
   myArray = CharacterArray("hi there")
End Sub


Sub example2()
Dim buff() As String
buff = Split(StrConv(my_string, vbUnicode), Chr$(0))
ReDim Preserve buff(UBound(buff) - 1) '
End Sub

Sub example3()
Dim buff() As String
ReDim buff(Len(my_string) - 1)
For i = 1 To Len(my_string)
   buff(i - 1) = Mid$(my_string, i, 1)
Next
End Sub
Leider zeigt der Compiler dabei Fehlermeldungen an. Könntet ihr die Beispiele entsprechend korrigieren? Danke im voraus.
http://stackoverflow.com/questions/13195...characters
Antworten Top
#2
Moin!
1. myArray() in example1 ist falsch dimensioniert, muss myArray heißen (ohne Klammern).
2. my_String in example2 und 3 ist nicht dimensioniert und besitzt keinen Wert.
3. i in example3 ist nicht dimensioniert.

Hier mal der berichtigte Code:

Modul Modul1
Option Explicit 
 
Function CharacterArray(value As String) 
   value = StrConv(value, vbUnicode) 
   CharacterArray = Split(Left(value, Len(value) - 1), vbNullChar) 
End Function 
 
Sub example1() 
   Dim d As String 
   Dim myArray 
   myArray = CharacterArray("hi there") 
End Sub 
 
 
Sub example2() 
Dim buff() As String, my_String As String 
my_String = "Hallo Welt!" 
buff = Split(StrConv(my_String, vbUnicode), Chr$(0)) 
Redim Preserve buff(Ubound(buff) - 1) ' 
End Sub 
 
Sub example3() 
Dim buff() As String, my_String As String, i As Long 
my_String = "Hallo Welt!" 
Redim buff(Len(my_String) - 1) 
For i = 1 To Len(my_String) 
   buff(i - 1) = Mid$(my_String, i, 1) 
Next 
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)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • VisualBasic
Antworten Top
#3
Danke für deine Hilfe,
jetzt kann ich heute am Samstag ein bißchen VBA üben.
Antworten Top
#4
Das ist kein VBA für Anfänger.

Verzichte auf 'Stackoverflow': das ist für professionelle Programmierer.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste