• ベストアンサー

入力した言葉を数値に変換し表示したいんです。

VisualBasic2005で作業を行っているモノです。 ネット上などでいろいろ調べてみたのですが、 検索方法が下手なのか調べきれなかったのでアドバイスをお願いいたします。 質問内容は... テキストボックス(ひらがな入力に限定しています)に入力した文字を数字(あらかじめ数字を割り当ててあります)に変換し、ラベルに表示する方法です。 数字の割り当て方は、以前に質問して理解できたのですが… 最初の文字しか反映されないので質問させていただきます。 例:Text1に「ここあ」と入力されたらLabel1に「551」と表示したいのですが、私の方法では「5」しか表示されません。 プログラムを貼り付けておきますので、何が足りないのか教えていただきたいと思います。 Private Sub Text1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtYou.TextChanged Select Case Text1.Text Case "あ", "か", "さ", "た", "な"        Label1.Text = 1 Case "い", "き", "し", "ち", "に"       Label1.Text = 2 Case "う", "く", "す", "つ", "ぬ       Label1.Text = 3 Case "え", "け", "せ", "て", "ね"       Label1.Text = 4 Case "お", "こ", "そ", "と", "の"       Label1.Text = 5 End Select End Sub 質問内容がわかりにくい上に乱文・駄文で申し訳ありませんが... わかる方がいましたらアドバイスをお願い致します。 宜しくお願い致します。

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

  • ベストアンサー
回答No.2

こんな感じで・・ Dim s As String = String.Empty For i As Integer = 0 To Text1.Text.Length - 1 Select Case Text1.Text.Substring(i, 1) Case "あ", "か", "さ", "た", "な" s &= 1 Case "い", "き", "し", "ち", "に" s &= 2 Case "う", "く", "す", "つ", "ぬ" s &= 3 Case "え", "け", "せ", "て", "ね" s &= 4 Case "お", "こ", "そ", "と", "の" s &= 5 End Select Next i Label1.Text = s End Sub

CRESCENT93
質問者

お礼

ありがとうございます。 ループについて私なりに調べてみたのですが、 うまくいかず苦戦していましたが... 上記の方法をプログラムに置き換えたら 正常に動きました。 これで前に進めます。 本当にありがとうございました。

その他の回答 (1)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

VB 繰り返し(ループ)について教えてください http://okwave.jp/qa4215109.html こちらの回答が参考になるのでは。

CRESCENT93
質問者

お礼

URLありがとうございました。 ループという言葉を知らなかったため、 似たような質問があることに気づきませんでした。 参考にさせて頂きます。

関連するQ&A