<p>In the code below</p>

<pre><code>For i = LBound(arr) To UBound(arr)
</code></pre>

<p>What is the point in asking using <code>LBound</code>? Surely that is always 0.</p>

Probably it comes from VB6. Because with
Option Base
statement in VB6, you can alter the lower bound of arrays like this:
```
```
Option Base 1
```
```
Also in VB6, you can alter the lower bound of a specific array like this:
```
```
Dim myArray(4 To 42) As String
```
```