
11-03-25, 14:57
|
| Όνομα: Χρήστος Έκδοση λογισμικού Office: Ms-Office 365 Γλώσσα λογισμικού Office: Αγγλική | | Εγγραφή: 18-11-2012 Περιοχή: Deutschland
Μηνύματα: 212
| |
Το πρόβλημα είναι ότι ο έλεγχος για "κενό" [μπορεί να σημαίνει πολλά διαφορετικά πράγματα σε διαφορετικούς τύπους] [1]:
* Για έναν τύπο 'Object', η μεταβλητή μπορεί να είναι 'Nothing'.
* Για έναν τύπο 'String', η συμβολοσειρά μπορεί να μην έχει καθόλου περιεχόμενο: '""', 'vbNullString'.
* Για έναν τύπο 'Variant', η συμβολοσειρά μπορεί να έχει οποιοδήποτε από τα ακόλουθα χαρακτηριστικά ή τιμές:
* μπορεί να είναι 'Missing' εάν η μεταβλητή είναι μια αχρησιμοποίητη προαιρετική παράμετρος,
* μπορεί να είναι 'Empty' εάν δεν έχει εκχωρηθεί ποτέ,
* μπορεί να είναι 'Null' εάν, για παράδειγμα, είναι δεσμευμένη σε ένα nullable πεδίο ή μη δεσμευμένη χωρίς τιμή,
* μπορεί να είναι μια κενή συμβολοσειρά '""', 'vbNullString'. Θα σου πρότεινα να χρησιμοποιήσεις αυτήν την συνάρτηση.
Public Function IsBlank(arg As Variant) As Boolean
Select Case VarType(arg)
Case vbEmpty
IsBlank = True
Case vbNull
IsBlank = True
Case vbString
IsBlank = (LenB(arg) = 0)
Case vbObject
IsBlank = (arg Is Nothing)
Case Else
IsBlank = IsMissing(arg)
End Select
End Function
|