12,692,288 members (34,116 online)
Rate this:
See more:
I am currently busy on a program in which when a record is added i need to increment a letter in a text box. Please could someone help me with incrementing letters , have never done it before?

thanks
Posted 13-Nov-12 2:55am
isi19520

Rate this:

## Solution 2

Try this code
(for sake of simplicity it assumes the input string being uppercase)
```Public Function Increment(ByVal s As String) As String
Dim index As Integer = s.Length - 1
Dim n As Integer
While index > 0 And s.Chars(index) = "Z"
index = index - 1
End While

Increment = ""
For n = 0 To index - 1
Increment = Increment + s.Chars(n)
Next

If index > 0 Then
Increment = Increment + Microsoft.VisualBasic.ChrW(Microsoft.VisualBasic.AscW(s.Chars(index)) + 1)

For n = index + 1 To s.Length - 1
Increment = Increment + "A"
Next
Else
Increment = "A" + s
End If

End Function

Sub Main()
Dim nxt As String
nxt = Increment("ZZABZZ")
End Sub```
Rate this:

## Solution 3

Thanks for all the help
i have found an easier solution

Dim letter As String = "A"
letter = Chr(Asc(letter) + 1)
Me.letter.Text = letter
Rate this:

## Solution 1

Hi

You will need to load the the alphabet in an array
```Dim letters(25) As String

letters(0) = "A"
letters(1) = "B"
letters(2) = "C"
letters(3) = "D"
letters(4) = "E"
etc.```

Then You will need to grab the Text box's contents.
```Dim letterGrab As String

letterGrab = tbLetter.Text```

Now get the letter's index
```Dim found As Boolean = False
Dim FoundIndex As Integer = 0
For i As Integer = 0 To 25

If letters(i) = letterGrab Then
found = True
FoundIndex = i
Exit For
End If
Next```

Finally get the new Letter and put it in the text box
```If found = True Then
FoundIndex = FoundIndex + 1
tbLetter.Text = letters(FoundIndex)

Else
'What to do if end of array reached
End If```

If you need case insensitive comparison, change code block 3 to this:

```Dim found As Boolean = False
Dim FoundIndex As Integer = 0
For i As Integer = 0 To 25
Dim CaseDiff As Integer  = String.Compare(letters(i), letterGrab, True)

If CaseDiff = 0 Then
found = True
FoundIndex = i
Exit For
End If
Next
```

Hope This Helps
Jacques

Top Experts
Last 24hrsThis month
 OriginalGriff 190 CPallini 155 Dave Kreskowiak 135 KarstenK 130 ppolymorphe 125
 OriginalGriff 2,888 Peter Leow 1,910 Mika Wendelius 1,743 Jochen Arndt 1,234 ppolymorphe 1,211