入力ボックスを表示し、その中に入力された数値を変数に格納したいのですが、.NETのときは動作したのですが、VB2005ですと、エラーとなってしまいます。何か設定項目があるのでしょうか?ご教示お願い致します。
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Decimal
i = InputBox("メッセージ", "値を取得")
End Sub
End Class
なお、helpから検索したVisual Basic 言語リファレンスの「InputBox 関数 (Visual Basic)参照 使用例」に掲載されているソースをそのまま実行してもエラーが帰ってきます。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
とりあえず、MSのHPで
「Microsoft.VisualBasic.CompilerServices.VBInputBox.resources」
を検索すると、
(http://search.microsoft.com/results.aspx?q=Micro …)
と、いくつかHITしますね。
# 但し、MSの公式な記事ではなく、フォーラムへのQ&Aですけど・・・
モジュール配布時のセキュリティの設定誤りや、
共有環境での使用で発生する、レアケースのようですね。
No.2
- 回答日時:
> VB2005ですと、エラーとなってしまいます。
> 等々試してみましたが動作しません。
結局どういう状況なんです?
No1さんの回答は
> Option Strict On で 'String' から 'Decimal' への暗黙的な変換はできません。
と言うエラー限定の対応策です。
それを試したって事は、このエラーだったって事ですか?
でも、
> helpから検索したVisual Basic 言語リファレンスの「InputBox 関数 (Visual Basic)参照 使用例」
は、このエラーにはならないはずですが・・・
具体的な情報(エラーメッセージ等)を教えてください。
#ちなみに、私のVB2005では、InputBoxはちゃんと動作します。
この回答への補足
「Missing Manifest Resource Exception はハンドルされませんでした。」というボックス
が、InputBox関数からポップアップされて表示されます。その中のエラーメッセージは
指定されたカルチャまたはニュートラル カルチャに対して適切なリソースが見つかりませんでした。"Microsoft.VisualBasic.CompilerServices.VBInputBox.resources" が適切に埋め込まれたか、実行時にアセンブリ "Microsoft.VisualBasic" にリンクされたか、または必要なサテライト アセンブリが読み込まれて完全に署名されていることを確認してください。
ということです・・・
No.1
- 回答日時:
お世話になります。
エラーとは、
Option Strict On で 'String' から 'Decimal' への暗黙的な変換はできません。
というエラーでしょうか?
であればの話ですが、
ソリューションエクスプローラで対象の
プロジェクトを右クリックしてプロパティ→
コンパイルタブに移動
Option Strict が On になっていますか?
個人的には On にしたままコーディングすることをお勧めしますが
Off にすることで、とりあえずエラーはでなくなります。
Option Strict On の状態のままでコーディングするのであれば
以下のような方法でキャストしてやらなければなりません。
i = CDec(InputBox("メッセージ", "値を取得"))
または
Decimal.TryParse(InputBox("メッセージ", "値を取得"), i)
など。
この回答への補足
有難う御座います。ご指摘のとおり実行したり、たとえば、
Dim i As Integer
i = CInt(InputBox("メッセージ", "値を取得"))
等々試してみましたが動作しません。
.NETなら何も問題ありませんのに・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
- Visual Basic(VBA) 空白のセルを変更しようとした時(アクティブセル)に インプットボックスを5回出す インプットボックス 1 2023/03/14 11:01
- Visual Basic(VBA) InputBoxでキャンセルボタンを押したらファイル自体を閉じたい 3 2022/07/23 17:52
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) Excelマクロでセルに値が入力されたら実行する 5 2023/08/06 11:03
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) VBAでのMATCH関数 3 2022/10/17 19:06
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
String""から型'Double'への変...
-
エクセルVBA 「On Error GoTo...
-
VBAでfunctionを利用しようとし...
-
お助けください!VBAのファイル...
-
On ErrorでエラーNoが0
-
実行時エラー'-2147467259(8000...
-
ACCESSで値を代入できないとは?
-
データベース操作時エラーについて
-
実行したSQLの結果を返す方法
-
オブジェクト型の変数にフォー...
-
【VBA】ワークブックを開く時に...
-
【VBAエラー】Nextに対するFor...
-
実行時エラー 438 の解決策をお...
-
VB.net 重複チェックがしたいです
-
「実行時エラー '3167' レコー...
-
マクロで"#N/A"のエラー行を削...
-
Excel実行時エラー[80004005]に...
-
UBoundに配列がありませんとエ...
-
エラー処理
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
String""から型'Double'への変...
-
On ErrorでエラーNoが0
-
VBAでfunctionを利用しようとし...
-
マクロで"#N/A"のエラー行を削...
-
VBA データ(特定値)のある最...
-
実行時エラー 438 の解決策をお...
-
お助けください!VBAのファイル...
-
文字列内で括弧を使うには
-
エクセルVBA 「On Error GoTo...
-
【VBA】ワークブックを開く時に...
-
マクロの「SaveAs」でエラーが...
-
ACCESSで値を代入できないとは?
-
実行時エラー'-2147467259(8000...
-
インポート時のエラー「データ...
-
【VB.NET】 パワポ操作を非表示で
-
Filter関数を用いた結果、何も...
-
UBoundに配列がありませんとエ...
-
Excel vbaについての質問
-
メールの件名のセットでエラー...
おすすめ情報