コンボボックスからデータを選ぶと、自動的にある計算をして、その結果がでるようにするには?

解決


shoot  2007-05-31 18:35:55  No: 136582

コンボボックスからデータを選ぶと、
自動的にある計算をしてその結果を返す
プログラムを作っています。

コンボボックスに表示するデータはCSV形式でテキストファイルとして保存しています。

1,aaa,1234
2,bbb,4352
3,ccc,1542

このCSV形式のデータの3列目をその後の計算に使用します。
Openコマンド、LineInputコマンドなど勉強しておりますが、
助言いただければうれしいです。


まずは  2007-05-31 21:31:30  No: 136583

>助言いただければうれしいです。

まず、なにかしらコードを書いて動作させてみたらいかがでしょうか?


shoot  2007-05-31 22:48:39  No: 136584

まず、入力するcsv形式のテキストファイルを作っておき、
そしてVB6.0でコンボボックスを作って、
以下のコードを書いてみました。
ですが、コンボボックスにタブが表示されず、
csv形式のファイルが一行に省略されて表示されてしまいました。
プルダウンメニューをしっかりと表示させたいです。

Private Sub Form_Load()
    Open "C:\test.txt" For Input As #1
    Dim A As String
    Do While Not EOF(1)
     Line Input #1, A
     Combo1.SelText = A
    Loop
    Close #1
 

End Sub


  2007-05-31 23:02:14  No: 136585

VB6が手元に無いんで正確には言えませんが、

>Combo1.SelText = A
SelTextはコンボのアイテムIndexだったはず・・・

アイテムを追加するのは AddItem


特攻隊長まるるう  2007-05-31 23:08:14  No: 136586

>SelTextはコンボのアイテムIndexだったはず・・・
…微妙に違うかも。。。

SelText部分を選択状態にして[F1]キーを押してください。
ヘルプ(MSDN)が表示されます。
> SelText プロパティは、現在選択されているテキストを含む文字列を設定します。
初心者には表現が分かり難いと思いますが、テキストが表示されている
入力テキストボックス部の設定を行うという意味です。

プルダウンの中に格納されるアイテムを追加するには、
AddItem メソッドを使用してください。
SelText と同様に選択状態で[F1]キーを押せば説明が
ありますし、使用例へのリンクもあります。


  2007-05-31 23:17:48  No: 136587

>>Combo1.SelText = A
>SelTextはコンボのアイテムIndexだったはず・・・
ゴメンナサイ  ウソでした

Private Sub Combo1_Click()

Dim strA As String

strA = Me.Combo1.Text     ←選択されたアイテム(表示されている文字列)
    'Me.Combo1.ListIndex  ←選択されたアイテムのIndex

MsgBox (strA)

End Sub


shoot  2007-06-01 01:34:15  No: 136588

今のところ下のようなコードを作りました。
頑張って、MsgBoxに計算結果が出るようにしなければなりません。

Private Sub Form_Load()
    Open "C:\test.txt" For Input As #1
    Dim wkBuf$
    Do While Not EOF(1)
        Line Input #1, wkBuf$
        Combo1.AddItem wkBuf$
    Loop
    Close #1
End Sub

_______________________________
Private Sub Combo1_Click()

    MsgBox "a"

End Sub


shoot  2007-06-01 01:36:38  No: 136589

お礼が遅れました。
初さん、まずはさん、特攻隊長まるるうさんありがとうございます。


shoot  2007-06-09 00:09:14  No: 136590

どうもありがとうございました。

Combo1.List(Combo1.ListIndex)

を用いることによって解決することができました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加