vb.net を使用して Excel ファイルにデータを書き込もうとしています。したがって、数値列をExcelの文字列に変換する関数です。
Public Function ConvertToLetter(ByRef iCol As Integer) As String
Dim Reminder_Part As Integer = iCol Mod 26
Dim Integer_Part As Integer = Int(iCol / 26)
If Integer_Part = 0 Then
ConvertToLetter = Chr(Reminder_Part + 64)
ElseIf Integer_Part > 0 And Reminder_Part <> 0 Then
ConvertToLetter = Chr(Integer_Part + 64) + Chr(Reminder_Part + 64)
ElseIf Integer_Part > 0 And Reminder_Part = 0 Then
ConvertToLetter = Chr(Integer_Part * 26 + 64)
End If
End Function
この関数は、他の数値でも問題なく機能します。
例えば、
- 1 => A
- 2 => B
- ...
- 26 => Z
- 27 => AA
- ...
- 51 => エイ
- 52 => t (そして、これが失敗し始めたときです) AZ を返すはずが、t を返しました。
どの部分を間違えたのかわかりませんでした。誰かが私を助けたり、vb.net を使用して数値を Excel の文字列に変換する適切な関数をコーディングする方法を教えてくれたりできますか?