tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルArgumentNullExceptionのエラーの対処方を教えてください。
記事No10470
投稿日: 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です。

よろしくご指導のほどお願いします。

[ツリー表示へ]
タイトルRe: ArgumentNullExceptionのエラーの対処方を教えてください。
記事No10471
投稿日: 2011/03/26(Sat) 06:41
投稿者花ちゃん
他人のメールアドレスを意味もなく投稿しないでください。
前回も投稿されていて注意したはずですが。
http://hanatyan.sakura.ne.jp/vbnetbbs/wforum.cgi?mode=allread&no=9383&page=210

掲示板等へ直接投稿されますと、収集されスパムメールの元になりメールアドレスを
変更する等せざるを得なくなります。

至急、下部の修正から、メールアドレスを削除しておいてください。


まず、
>『半角1バイト・全角2バイト換算での文字列のバイト数を取得する。』を拝見させていただきましたが、
見ても間違った(思い込みによる間違ったコード)コードを書いていては何にもなりません。
(投稿されたコードは実際に使っていたものですか? 投稿用に書き直したコード?)

そもそも If bu1 = " " Then の行は何をしようとしているのですか?
>ArgumentNullException』のエラーが出てしまいます
ArgumentNullException のエラーが出ているのなら、事前に  bu1 が  vbNullString か
どうかを調べ、 vbNullString なら "0" か "" に置き換えればいいのでは。
If bu1 = vbNullString Then
    xSheet.Cells(Gyo, 5) = 0
じゃないのですか?

[ツリー表示へ]
タイトルRe^2: ArgumentNullExceptionのエラーの対処方を教えてください。
記事No10472
投稿日: 2011/03/26(Sat) 21:56
投稿者seta
> 他人のメールアドレスを意味もなく投稿しないでください。
大変失礼をしました。
メールアドレスに置き換えないと投稿出来ないものと思っていました。
申し訳ありませんでした。

教えてもいただき本当に有り難うございました。

[ツリー表示へ]
タイトルRe^3: ArgumentNullExceptionのエラーの対処方を教えてください。
記事No10473
投稿日: 2011/03/26(Sat) 22:16
投稿者花ちゃん
> > 他人のメールアドレスを意味もなく投稿しないでください。
> 大変失礼をしました。
> メールアドレスに置き換えないと投稿出来ないものと思っていました。
> 申し訳ありませんでした。

だったら、すぐに削除しておいてください。
(Google のキャッシュに収集されるので、. を入力して予防はしておりますが、
私が消すべき事でもないので)

[ツリー表示へ]
タイトルRe^4: ArgumentNullExceptionのエラーの対処方を教えてください。
記事No10474
投稿日: 2011/03/26(Sat) 22:37
投稿者seta
大変お手数おかけしました。

以後気をつけます。

お世話様でした。

[ツリー表示へ]
タイトルArgumentNullExceptionのエラーの対処【解決】
記事No10475
投稿日: 2011/03/26(Sat) 23:48
投稿者seta
今、先ほど教えていただいたこともうまくいきました。

本当に有り難うございました。

[ツリー表示へ]