質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.48%
VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

Q&A

2回答

1461閲覧

昇順においてのループ処理

miwaboy

総合スコア2

VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

0グッド

0クリップ

投稿2020/06/23 11:56

編集2020/06/23 12:26

VB初心者です。
昇順でループ処理を下記のコードでやりたいのですがどこをどう直せばいいですか?
よろしくお願いします。
Dim x AS Integer
x = 1
Dim y AS Integer
y = 2
Dim z AS Integer
z = 3
Dim a AS Integer
Dim b AS Integer
Dim c AS Integer

If x<y then
a = y
b = x
else
a = x
b = y

If a<z then
Listbox.Item.Add(z)
c = a
else
Listbox.Item.Add(a)
c = z

If b>c Then
Listbox.Item.Add(b)
Listbox.Item.Add(c)
else
Listbox.Item.Add(c)
Listbox.Item.Add(b)

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

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

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

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

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

y_waiwai

2020/06/23 12:10

しつもんはなんでしょうか
miwaboy

2020/06/23 12:13

上記のコードでループ処理を行いたいのですが、どう直せばよろいですか?
y_waiwai

2020/06/23 12:15

ループ処理で何をするんでしょうか。 意味がわかりません
miwaboy

2020/06/23 12:16

ループ処理で昇順をつくりたいのですが、どうすればいいですか?
YAmaGNZ

2020/06/23 23:45

x、y、zと3つの数字を昇順でListBoxに追加したいということですか?
miwaboy

2020/06/23 23:56

そうです
guest

回答2

0

リストボックスに追加のループはどのようにすればいいですか?

投稿2020/06/24 02:11

miwaboy

総合スコア2

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

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

YAmaGNZ

2020/06/24 02:46

追加する材料を配列やList等、ループで使えるような入れ物にセットしてください。
miwaboy

2020/06/24 02:57

セットしました
YAmaGNZ

2020/06/24 03:28

そうですか
guest

0

まずは、何をループで処理したいのか明確にしましょう。
ループを使ってソートを行いたいのか、ListBoxへの追加をループで行いたいのか
どの処理でループを使うのかは分かりませんが、ループを使うということは処理対象は配列やListなどになりますので、まずはデータをそれらに格納することから考えてください。

投稿2020/06/24 01:41

YAmaGNZ

総合スコア10242

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

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

miwaboy

2020/06/24 11:01

リストボックスへの追加をそれぞれ変数に格納したのですがループ処理はどうすればいいですか?
YAmaGNZ

2020/06/24 11:14

どのようなコードを書いたのですか? 私が貴方がどのようなコードを書いたのか知るすべは、あなたからの情報のみです。 初心者とのことですが、配列やFor文などの理解はされているのでしょうか?
miwaboy

2020/06/24 12:04

下記のコードです。 Dim s(2)AS Integer s(0) = 1 s(1) = 2 s(2) = 3 Dim a AS Integer Dim b AS Integer Dim c AS Integer For i=0 TO 2 For j=0 TO 2 If s(i) > s(j+1) Then a = s(i) b = s(j+1) else a = s(j+1)     b = s(i) endif Listbox.item.Add(a) next next
YAmaGNZ

2020/06/24 13:25

ソートとComboBoxへの追加は別にしましょう。 また、値は3つ固定なのでしょうか?
miwaboy

2020/06/24 15:07

いや、本来は10個の値です。 最初は少ない値の個数でできるようにすれば値が増えてもできるはずです。
YAmaGNZ

2020/06/25 00:32

ソートに関しては「VB.NET 配列 ソート」等検索すれば、いろいろ方法が出てきますので参考になるかと思います。 また、ComboBoxへの追加はソート済の配列をループで回して順番に追加すればよろしいかと思います。
YAmaGNZ

2020/06/25 00:34

また、配列に関しても10個と数が決まっているのであればいいのですが、可変するのであればListを使用されるのをお勧めします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問