🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

1回答

5896閲覧

VB.NETで縮小変換しないでとエラー

manabunbun

総合スコア39

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2020/12/11 05:26

VisualStudio2019(VB),シーオーリポーツ for .NET Ver.3です。
シーオーリポーツ for .NET Ver.2からVer3へバージョンアップした際に
以下のようなエラーが表示されました。

VB.NET

1 Dim detailList As CnListField 2Dim current1 As Integer = 0 'カウンター 3With Me.FlexGrid1 4For i As Integer = 1 To .Rows.Count - 1 5 detailList.ListText(1, current1, CInt(.GetData(i, "かがみ金額")).ToString("#,##0")) 6             : 7 その他処理 8Next

エラー BC30519 縮小変換しないで呼び出される、アクセス可能な 'ListText' がないため、オーバーロードの解決に失敗しました:
'Public Overloads Sub ListText(col As Short, row As Short, text As String)': パラメーター 'col' と一致する引数は 'Integer' から 'Short' へ引数照合します。
'Public Overloads Sub ListText(col As Short, row As Short, text As String)': パラメーター 'row' と一致する引数は 'Integer' から 'Short' へ引数照合します。.....
と表示されます。

詳しい人に聞いたところ、Integer(1の部分)をShortに変換しないとダメでしょうと言われたので、

detailList.ListText(DirectCast(1, Short), current1, CInt(.GetData(i, "かがみ金額")).ToString("#,##0"))
では、1の部分が"IntegerをShortに変換できません。エラーが表示されました。

どうすればよろしいのでしょうか。何か解決策があればよろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KOZ6.0

2020/12/11 05:48

current1 も Short にしてみては?
退会済みユーザー

退会済みユーザー

2020/12/11 05:58 編集

第 1 引数の 1 を以下の記事の「データ型を明示するためのサフィックスの一覧」を見て型を明示的に指定しては? 数値のデータ型を明示的に指定するには? https://www.atmarkit.co.jp/ait/articles/0405/07/news065.html 第2引数の current1 が Integer 型なので、そこでまた同じエラーになるような気がしますが。
manabunbun

2020/12/11 07:21

ご回答ありがとうございました。 Dim current1 As Short = 0 'カウンター detailList.ListText(1S, current1, CInt(.GetData(i, "かがみ金額")).ToString("#,##0")) 数字は、サフィックスのS,変数はShortに変更したらうまくいきました。 半日以上悩んでいましたが、解決してほっとしています。 ありがとうございました。
退会済みユーザー

退会済みユーザー

2020/12/11 08:59

解決したようですので、お手数ですが、解決した方法を回答欄に書いてそれにマークを付けてこのスレッドはクローズ願います。
guest

回答1

0

自己解決

Dim current1 As Short = 0 'カウンター
detailList.ListText(1S, current1, CInt(.GetData(i, "かがみ金額")).ToString("#,##0"))

数字は、サフィックスのS,変数はShortに変更したらうまくいきました。

投稿2020/12/12 07:00

manabunbun

総合スコア39

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/12/13 23:39

スレッドをクローズするためこの回答にマークをつけて下さい。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問