- PR -

存在しないデータを読み取ろうとしました。

投稿者投稿内容
キラ
会議室デビュー日: 2006/11/29
投稿数: 4
投稿日時: 2006-11-30 16:26
jittaさん・じゃんぬねっとさん・eterniaさん
ご指摘ありがとうございます。
指摘されたことを一つ一つ解決して行こうと思います。
キラ
会議室デビュー日: 2006/11/29
投稿数: 4
投稿日時: 2006-11-30 22:04
To:jittaさん・じゃんぬねっとさん・eterniaさん

怒られた部分を一つ一つ直していったらやりたかったことが出来ました。
エラーの原因もDataReaderのもっている値が
行単位では無く列単位と勝手勘違いして使っていたのが原因でした。

あと、if文の中でDataReader.Readを使っても
1行引っ張ってくるという事に気付けなくて手間取りましたが、
無事解決しました。

色々教えてくださってありがとうございました。


Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-11-30 22:42
あ・・・遅かった。
えっと、潰してしまった時間がもったいないので、あげておく。

コード:
Dim hReader As System.Data.SqlClient.SqlDataReader
hReader = hCommand.ExecuteReader
Dim dataCount As Integer = 0
Const TopOfDataRow As Integer = 13 - 1 ' 先に足しているので
Const LeftOfDataColumn As Integer = 3 - 1 ' 先に足しているので
While (hReader.Read()) ' データがあるだけ繰り返す
    Dim ColumnCount As Integer = hReader.FieldCount
    dataCount += 1
    For column As Integer = 1 To ColumnCount ' カラムの数だけ繰り返す
        Dim prompt As String = hReader(column).ToString() + System.Environment.NewLine
        xlSheet.Cells( _
            TopOfDataRow + dataCount _
            , LeftOfDataColumn + column).Formula = prompt
    Next
End While
hReader.Close()



_________________
eternia
常連さん
会議室デビュー日: 2006/02/23
投稿数: 42
投稿日時: 2006-11-30 23:00
引用:

キラさんの書き込み (2006-11-30 22:04) より:

怒られた部分を一つ一つ直していったらやりたかったことが出来ました。


いや別に怒ったわけでは…^^;
でもやりたいことができたようでよかったです。

COMのあたりについては書かれていませんが……できてるのかな?
#じゃんぬさんの仰られているところです。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-11-30 23:23
引用:

eterniaさんの書き込み (2006-11-30 23:00) より:

COMのあたりについては書かれていませんが……できてるのかな?
#じゃんぬさんの仰られているところです。


あ、それ、必要ないです。全部 Sub Main でやっているので、使い終わり=関数の終わり=プログラム終了で、解放してくれます。
_________________
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-11-30 23:58
引用:

Jittaさんの書き込み (2006-11-30 23:23) より:

あ、それ、必要ないです。全部 Sub Main でやっているので、使い終わり=関数の終わり=プログラム終了で、解放してくれます。


強制終了でおしまい。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2006-12-01 00:45
Quit位はfinallyにしとかないと
まずかったりしませんでしたっけ?
※まあなんかこの辺は微妙だった気もしますが。

スキルアップ/キャリアアップ(JOB@IT)