- ベストアンサー
データ型変換
String型のデータをInteger型の変数に入れたいのでが・・・。 '変数の宣言 Dim DataTable(2, 5) As String Dim made As Integer 'データ型変換 made = CInt(DataTable(1, 0)) このようにしたのですが、実行すると 『実行時エラー '13' 型が一致しません』 と表示され、デバックしてみるとココ↓ made = CInt(DataTable(1, 0)) が黄色くなります。 どうしたら上手く型変換ができるのでしょうか? ちなみに、VB6.0です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
CInt()は「浮動小数点値」をInteger型にする関数です。 made = CInt(CStr(DataTable(1, 0))) こう書いて下さい。 CStr()を使ってString型のDataTable(1, 0)を数値に変換して 変換した数値が小数点を含む実数の可能性があるのでCInt()を使ってInteger型にして 結果をmadeに代入 と言う事をしている訳です。
その他の回答 (1)
- TAK_999
- ベストアンサー率43% (42/96)
回答No.2
DataTable(1,0)には何が格納されていますか? 数値として評価できる文字列が格納されていなければエラーになります。 私ならば、 If IsNumeric(DataTable(1,0) Then made = CInt(DataTable(1, 0)) Else made=0 End If とでもコーディングします
質問者
お礼
DataTable(1,0)には何も格納されていませんでした。 とても初歩的なミスでした。ご指摘ありがとうございました。
お礼
ありがとうございました。 CInt()は「浮動小数点値」をInteger型に変換するものだったんですね。勉強不足でした。