User FAQs
1) What is the best way to check for an empty string ?
Always check the length of the string using the LEN function.
Avoid comparing with an empty string ("") as this requires 6 bytes of memory.
If VBA.Len(myString) = 0 Then
2) What is the best way to assign an empty string ?
Always assign your string to vbNullString when you need to empty the contents.
Avoid using an empty string ("") as this is slower and takes up more memory.
Zero-Length String ("") - Is an actual string literal and has a size of 6 bytes.
vbNullString - Is a special character that denotes an empty string which is equivalent to zero.
Dim myString As String
myString = VBA.Constants.vbNullString
3) How would you declare a Variable Length String ?
Dim myString As String
4) How would you declare a Fixed Length String with 10 characters ?
A fixed length string is padded with null characters CHR(10) when it is declared.
The CHR returns the character with the corresponding ASCII / ANSI number.
Dim myString As String * 10
5) How would you check the last 2 characters in a string ?
Dim myString As String
myString = "someText"
If (Mid(myString, Len(myString) - 1) = "xt") Then
End If
6) How would you check for specific characters in a string ?
The Like Operator can be used to compare two strings and provide pattern matching.
If (sFirstName Like "a?b*" = True) Then
End If
7) What is the difference between the MID function and the MID statement ?
The MID Function returns a substring from a larger string.
Dim sText As String
sText = Mid("hello world", 1, 3)
Debug.Print sText '= "hel"
The MID Statement replaces some characters inside a string variable.
Dim sText As String
sText = "hello world"
Mid(sText, 1, 3) = "XXX"
Debug.Print sText '= "XXXlo world"
8) What is the difference between the LEFT function and the LEFT$ function ?
LEFT - This function can handle Null being passed in as an argument.
LEFT$ - This function cannot handle Null.
For more information refer to the Functions $ page.
9) What is the difference between the vbNewLine constant and the vbCrLf constant ?
There is no difference, they both represent a carriage return and line feed.
VBA.Constants.vbNewLine '= CHR(13) + CHR(10)
VBA.Constants.vbCrLf '= CHR(13) + CHR(10)
10) Can you have this ?
Yes this is valid and defines a subroutine with an optional argument that has a default value of an empty string.
Public Sub SubName(Optional ByVal sValue As String = vbNullString)
End Sub
© 2024 Better Solutions Limited. All Rights Reserved. © 2024 Better Solutions Limited TopPrevNext