タイトル | : ArgumentNullExceptionのエラーの対処方を教えてください。 |
記事No | : 10470 |
投稿日 | : 2011/03/26(Sat) 01:04 |
投稿者 | : seta |
以前教えていただいたことがあります。その時は大変お世話様でした。
今回も教えていただきたいのです。(そのときのハンドルネームは忘れました)
Excelファイルから文字列のバイト数を取得したいのですが、すべてのセルに文字が入っているのではなく、空白セルもあり、それが絡んで『ArgumentNullException』のエラーが出てしまいます。
以下の書き方をどのように直したら良いのか教えていただけないでしょうか。
Do Until Suu = 0
Dim bu1 As String = xSheet.Cells(Gyo, 4).Value
If bu1 = " " Then
xSheet.Cells(Gyo, 5) = 0 Exit Do
Else
xSheet.Cells(Gyo, 5) = System.Text.Encoding.GetEncoding ("shiftjis").GetByteCount(bu1).ToString() End If
Gyo = Gyo + 1 Suu = Suu - 1
Loop
空白セルのバイト数は "0" にして後の処理に繋げていきたいので空白セルは削除出来ません。
『半角1バイト・全角2バイト換算での文字列のバイト数を取得する。』を拝見させていただきましたが、 『VB.NET には LenB 関数はありません。』となっています。
以前の掲示板でcamputerさんが『レイトバインドするとExcelのFindNextオブジェクトが開放できなくなります』 とあり、私の質問に近いような気がしますが未熟者で理解出来ませんでした。
環境:VB2008+Vista+Excel2007です。
よろしくご指導のほどお願いします。
|