Einfache IF Abfrage

dobermant

Erfahrenes Mitglied
nabend, folgendes Problem:

ich möchte ein Array mit Strings füllen. Maximal hab ich 10 Elemente, meist aber weniger. Hin und wieder tauchen aber in GetText auch Leerstrings aus, die ich nicht
dem Array übergeben will.

PHP:
Dim wert(10) As Variant
// ......

If GetText = "" Then
    MsgBox ("Leer")
Else
    wert(n) = GetText
End If

Die MSGBOX gibt ordenlich "leer" aus, trotzdem wird das Array
auch mit den leeren Werten gefüllt. Hab ich da was übersehen?

Danke
 
Wenn du ein Array dimensionierst, wird es standardmäßig mir Leerwerten gefüllt. du müsstest dir also was überlegen, um zu erkennen ob ein Arrayelement wirklich leer ist oder ob es sich um die Standars-Leerfüllung handelt (z.B. "leere" Arrays mit einem Zeichen vorfüllen, zweites Array oder String mit Kontrollzeichen, ...).


Der Doc!
 
Hallo dobermann,

Du musst das Array als dynamische Datenfeld anlegen und mit hilfe eines Zählers anpassen.
Etwa so:

Code:
Dim wert() As Variant     ' dynamische Datenfeld
  ' ...
  ' ...
  If GetText = "" Then
    MsgBox ("Leer")
  Else
    n = n + 1               ' Zähler erhöhen
    ReDim Preserve wert(n)  ' Datenfeld anpassen mit Preserve!!
    wert(n) = GetText
  End If

Viel Erfolg
Walter Gutermann
 
vestehe...somit bleiben auch die leeren elemente aussen vor...
muss ja wirklich sagen...VB ist schon ne sehr strenge sprache :)

besten dank der herr, das war hilfreich
 
Zurück