• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB.NET InputBox のMessageの出し方で困っています。)

VB.NET InputBoxでのMessage出し方の困り事

このQ&Aのポイント
  • VB.NETの超初心者ですが、InputBoxでのMessage出し方に困っています。月曜夜12時までの宿題提出がありますので、ご協力いただけると幸いです。
  • 2つのInputBoxを使用し、12か月分のRevenueとExpenseを入力する必要があります。Revenueを1月から12月まで入力した後、ボタンをクリックしてExpenseを入力します。しかし、Expenseの最後のメッセージが「Enter the Expense amount for the month #13」となってしまい、正しく動作しません。
  • 変数intMaxNumberOfEntriesには12が設定されており、このエラーを解決して#1からスタートする方法を教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.1

DateTime構造体を有効に使用してください。 まず、 If IsNumeric("インプットボックスの戻り値") Then DateTime revenueDate = new DateTime(DateTime.Now.Year,Integer.Perse("インプットボックスの戻り値",1) Integer ExpenseValue = revenueDate.AddMonths(1).Month End If これで、12の次は1月にできます。

mspokemon
質問者

お礼

助かりました。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VB5でCSVデータをAccess97のDBへセット

    普段はVB.NETの開発をすこししているのですが VB5のプログラムの修正の依頼が来て困っています。 CSVのデータをVB5でAccess97のDBへデータセットしたいのですが VB.Netでは同様のプログラムを作成した事があるのですが VB5は全然仕様が違うので困っています。 VB5でCSVを読み込んで配列にセットするにはどのように したらいいのでしょか?CSVを行で読み込むところは なんとか調べてわかりましたが、VB5ではSplitや配列が使えそうに ないのでどのようにしたらいいのかわかりません。 よろしくお願いします。 現在のソース Dim strTextLine As String Dim strTxtDat As String intFileNo = FreeFile Open "c:\infile.csv" For Input As #intFileNo Do While Not EOF(intFileNo) Line Input #intFileNo, strTextLine Loop Close #intFileNo

  • VB 配列

    今,VBでテキストファイルを読込み配列に入れるという作業を書いたのですが,うまくいきません. 初回例外が発生してしまいます.配列は文字列の配列になります. どなたかご教示のほどよろしくお願いいたします. 'ファイルの読込み Dim path1 As String = "C:\Users\aleph_H.S\Desktop\気象台データインポートツール\気象台データインポートツール\" Dim path2 As String = "気象台データリスト.txt" Dim Mypath As String = path1 + path2 ' StreamReader の新しいインスタンスを生成する Dim cReader As New System.IO.StreamReader(Mypath, System.Text.Encoding.Default) ' 読み込んだ結果をすべて格納するための変数を宣言する Dim stResult As String = String.Empty Dim matrix(,) As String Dim ic As Long = 0 Dim icc As Long = 0 ReDim Preserve matrix(80, 3) ' 読み込みできる文字がなくなるまで繰り返す While (cReader.Peek() >= 0) ' ファイルを 1 行ずつ読み込む Dim stBuffer As String = cReader.ReadLine() ' 読み込んだものを追加で格納する stResult &= stBuffer & System.Environment.NewLine ic = ic + 1 'カンマ区切りで分割して配列に格納する Dim stArrayData As String() = stResult.Split(","c) For Each sstData In stArrayData icc = icc + 1 '文字列をInteger型に変換 matrix(ic - 1, icc - 1) = sstData Next End While cReader.Close()

  • VB.netでのMySQLの接続エラーについて

    VB.netでのMySQLの接続エラーについて 『行いたい事』 レンタルサーバー(ロリポップ)で管理しているサイトのデータベース(MySQL)にパソコンから接続したいと考えています。 パソコンからレンタルサーバーで管理しているデーターベースにアクセスするための言語はVB.netを使用しています。 パソコンからVB.netにてSQLを使用してサーバーにあるデータベースのデータの取得等を行いたいと考えています。 『問題』 下記プログラムにてstrPasswordに直接、レンタルサーバー(ロリポップ)より取得したパスワードを記載しているのですが、Open() 時にエラーとなってしまいます。 下記★の部分が、会社からインターネットに接続する為のプロバイダーから取得しているパスワードに自動的に変わってしまいます。 基本的な事で申し訳ありませんが、ご教授のほどよろしくお願いします。 ●環境 ・Windows XP ・Visual Studio 2008 ・.NET Framework3.0 sp2 端末からデータベースへアクセスするためにConnector/Netを入手しインストールも行っています。 ●-----エラー内容----- Access denied for user 'ユーザID'@'★ここが変わっています★' (using password: YES) ●-------------------- ●-----プログラム----- Dim strServerName As String = "●●.lolipop.jp" Dim strUserID As String = "ユーザID" Dim strPassword As String = "パスワード" Dim strDataBaseName As String = "データベース名" Dim sqlStr As String Dim dr As MySqlDataReader Dim cmd As MySqlCommand Dim MySql As New MySqlConnection '接続パラメータ定義. Dim strParam = String.Format("Server={0};User ID={1};Password={2};Initial Catalog={3};Convert Zero Datetime=true", _ strServerName, strUserID, strPassword, strDataBaseName) '接続準備 MySql = New MySqlConnection(strParam) '接続 MySql.Open() ★この行でエラーとなり書き換わっています。 'クローズ MySql.Close() ●------------------

  • EXCEL-VBマクロで教えて下さい

    パスワードを入力を促すVBマクロですが「キャンセル」キーを押した時に 以降の操作をせずマクロ終了したいのですがどのような構文を挿入すべき でしょうか? Sub Macro3() ' ' Macro3 Macro ' マクロ記録日 : 2012/7/27  ユーザー名 : HA社 '    Const MYPASSWORD As String = "apcs123"    Dim myPassInput As String    myPassInput = InputBox("入力してください", "パスワードの入力")    Do While MYPASSWORD <> myPassInput    myPassInput = InputBox("違います。再度入力してください", "パスワードの入力")    Loop    ActiveSheet.Unprotect    Rows("40:50").Select    Selection.EntireRow.Hidden = False    Range("A1:C1").Select End Sub

  • VB6 テキストへの書き込み

    VB6 SP6でプログラムを作成中です。 あるテキストボックスに書いた文字列をコマンドを  押すと、#5のテキストへ書き込みたいと思います。コマンドを押すたびに改行させたいのですが、1行目のデータが書き換えられてしまいます。何か良い方法はありませんか? Private Sub Command3_Click() Dim めぐ As String めぐ = Text1.Text Open "C:\Documents and Settings\Owner\デスクトップ\通信データ.txt" For Output As #5 Print #5, めぐ Close #5 End Sub

  • VB6でEXCELをクローズ出来ない

    VB6でEXCELを使用した後クローズ処理をしたつもりですが、VBと別にEXCELを起動しVBで使ったEXCELを読み込もうとすると、「編集のためロックされています」とメッセージが出て、読み取り専用でしかオープン出来ません。また、VBでEXCELを繰り返しオープンするとメモリがいっぱいになってしまいます。 VBでのEXCELオープンは Dim fnm As String Dim exl As Object fnm = "EXCEL File名" 'フルパスで指定 Set exl = CreateObject("Excel.Application") exl.Application.Workbooks.Open FileName:=fnm クローズは Set exl = CreateObject("Excel.Application") exl.Application.Quit Set Sheet = Nothing Set BooK = Nothing Set ExcelApp = Nothing 以上です。なお、VBの参考書は入門書だけ持っていますが、このようなことは書いてありません。従って上のコードも意味もわからず、ネットから拾ってきたまま使用しています。参考書または、Webサイトを紹介して頂ければ有り難いです。

  • VB 配列の内容をファイルに書き込む

    VB2008を使用しています。 stg_bitという配列に一文字ずつ「abc・・・」 のように入っているものを、テキストファイルに出力したいのですが・・・ stg_bitという配列の内容をファイルに書き込みたいのですが、 うまくいきません。 ご教授お願いします!! Dim i As Integer Dim stg_str As String Dim Writer As New IO.StreamWriter("C:sample.txt") Writer.WriteLine(stg_bit) Writer.Close()

  • VBでエディタ

    こんにちは。Kakugariです。  今、VBでエディタを作っていますがファイル操作でつまずいてしまいました。Commondialogからファイル名を取得して、そのファイルをMaintxtに表示するプログラムですがMaintxtに表示されるとき、Tabを使用してスペースを空けた部分が、無視されて文字が前に詰めて表示されます。それ以外は正常です。下にコードを載せましたので、お分かりになられる方は、間違いを指摘していただけたらありがたいです。ちなみにVB6です。Commondialogのプロパティは、デザイン時に設定されています。 Private Sub mnuOpen_Click()   On Error GoTo ErrCode   With CommonDialog1     .DialogTitle = "開く"     .ShowOpen   End With   Dim txt As String, Work As String   Open CommonDialog1.FileName For Input As #1   Do While Not EOF(1)     Input #1, Work     txt = txt & Work & vbCrLf   Loop   Close #1   Maintxt = txt   Exit Sub ErrCode:   Close #1   MsgBox "ファイルは開けませんでした。", vbCritical End Sub

  • inputBoxに 2007/07/25と入力したら・・・

    またまたお願いします。 注文した商品の受入処理をエクセルでやりたいと思ってます。 注文した履歴はSheets("T_注文")にあります。 項目は ID 注文番号 連番 注文日 仕入先コード 仕入先名担当者 消費税  納期 品番 商品番号 商品名 数量 単価 金額 備考 です。 注文日は2008/07/25を平成20年7月25日と書式設定で設定してあります。 さて、マクロで注文日をkeyとしてinputBoxに 2007/07/25と入力したら Sheets("T_注文")にフイルターがかかり選択し表示できるようにと マクロを書きましたが、実際、 該当なしとなります。 多分 2008/07/25 と 平成20年7月25日 の差だと思うのですが、 inputboxに入力した時に平成20年7月25日となるようには出来ませんか? また 2008/07/25としても問題ないようにするにはどうしたらよいのでしょうか? おねがいします。 Sub 発注日受入処理実行() Dim Key As String '終了日 Application.ScreenUpdating = False Range("T_受入処理!A61").CurrentRegion.ClearContents Key = InputBox("検索する註文日番号を入力してください", "オービットベース:受入処理検索") If Key = "" Then Exit Sub End If Sheets("T_注文").Select ・・・・・・

  • VB6.0にてStreamReaderを使用したいのですが、

    VB6.0にてStreamReaderを使用したいのですが、 Dim Reader As New IO.StreamReader("C:\Windows\System32\eula.txt", のコードが赤字でエラーになります。 どう修正すればよろしいでしょうか? ご存知の方教えてください。よろしくお願いします。 Dim strTemp As String Dim Reader As New IO.StreamReader("C:\Windows\System32\eula.txt", System.Text.Encoding.GetEncoding("Shift-JIS")) strTemp = Reader.ReadToEnd msgobox strTemp Reader.Close