下記コードで[大吉、中吉、小吉、凶]が出ません。
[おみくじ0、1、2、3]となってしまいます。
修正をお願いします。
Private Sub CommandButton1_Click()
Dim i As Long
Randomize '乱数系列初期化
i = Int(4 * Rnd) '0~3で乱数生成
Dim おみくじ0 As String
Dim おみくじ1 As String
Dim おみくじ2 As String
Dim おみくじ3 As String
Dim 運勢 As String
おみくじ0 = "大吉"
おみくじ1 = "中吉"
おみくじ2 = "小吉"
おみくじ3 = "凶"
運勢 = "おみくじ" & i
MsgBox 運勢
End Sub
No.4ベストアンサー
- 回答日時:
"おみくじ" & iを印字(表示)してるんだから当たり前
i=0なら ”おみくじ0”と印字される。
iによって、大吉、中吉、小吉、凶にしたいんだろ?
以下を全て変更
Dim おみくじ0 As String
Dim おみくじ1 As String
Dim おみくじ2 As String
Dim おみくじ3 As String
Dim 運勢 As String
おみくじ0 = "大吉"
おみくじ1 = "中吉"
おみくじ2 = "小吉"
おみくじ3 = "凶"
運勢 = "おみくじ" & i
MsgBox 運勢
↓↓↓↓
if i=0 then 運勢="大吉"
elseif i=1 then 運勢="中吉"
elseif i=2 then 運勢="小吉"
elseif i=3 then 運勢="凶"
endif
MsgBox 運勢
「"おみくじ" & iを印字(表示)してるんだから当たり前」
そういう事ですね。
コードを変更しました。
ありがとう御座いました。
No.5
- 回答日時:
> 運勢 = "おみくじ" & i
「運勢」という文字型変数に「おみくじ」という文字列とLONG型変数iの値をくっつけて代入しています。
ちなみに
> Dim おみくじ0 As String
> Dim おみくじ1 As String
> Dim おみくじ2 As String
> Dim おみくじ3 As String
> Dim 運勢 As String
>
> おみくじ0 = "大吉"
> おみくじ1 = "中吉"
> おみくじ2 = "小吉"
> おみくじ3 = "凶"
の10行は
Dim おみくじ0 As String = "大吉"
Dim おみくじ1 As String = "中吉"
Dim おみくじ2 As String = "小吉"
Dim おみくじ3 As String = "凶"
Dim 運勢 As String
の5行で済みます。
参考まで。
No.2
- 回答日時:
方法としては、
1)おみくじ?の変数を配列変数にする
2)switch ~ case 文を使う
個人的にはswitch文が好み
配列のコードも考えてみました。
アドバイスをありがとう御座いました。
Private Sub CommandButton1_Click()
Dim おみくじ(3) As String
おみくじ(0) = "大吉"
おみくじ(1) = "中吉"
おみくじ(2) = "小吉"
おみくじ(3) = "凶"
Dim i As Long
Randomize '乱数系列初期化
i = Int(4 * Rnd) '0~3で乱数生成
MsgBox おみくじ(i)
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:12
- Visual Basic(VBA) countifsについての質問 3 2023/03/08 13:45
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
- Visual Basic(VBA) 2つ目のコンボボックスが動作しません。 3 2023/03/25 12:29
- Visual Basic(VBA) Excel VBA でデータ転記について 1 2023/03/07 19:11
- Visual Basic(VBA) 複数条件でのカウント 3 2022/04/20 23:06
- Visual Basic(VBA) 初めてマクロを入力しますが、テキストとおりに入力したのに構文エラーです。修正を教えてください。 3 2022/10/28 11:18
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Excel(エクセル) エクセルVBA、ファイル名をセルの値で保存の方法を教えてください。 おそれいります。こちらで数々のエ 6 2023/06/30 22:17
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAから書き込んだ条件付き初期...
-
【VBA】 結合セルに複数画像と...
-
Excel VBAについて。こんな動作...
-
VBA 最終行の取得がうまくいか...
-
VBA Application.Matchについて...
-
【ExcelVBA】値を変更しながら...
-
Excel VBA 定義されたプロージ...
-
ExcelのVBAコードについて教え...
-
Excelのマクロについて教えてく...
-
不要項目の行削除方法について
-
VBA 同じフォルダ内のすべての...
-
[VB.net] ボタン(Flat)のEnable...
-
VBAでCOPYを繰り返すと、処理が...
-
ExcelVBA シート名を複数セルか...
-
【マクロ】オートフィルターに...
-
vba Windowオブジェクト(Window...
-
Vba 型が一致しません(エラー1...
-
Excelのマクロについて教えてく...
-
VBAでセルの書式を変えずに文字...
-
Excel VBA 選択範囲の罫線色の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAについて教えて下さい
-
ExcelのVBAコードについて教え...
-
ExcelのVBAコードについて教え...
-
【ExcelVBA】5万行以上のデー...
-
VBA Application.Matchについて...
-
Excelのマクロについて教えてく...
-
Excel VBAについて。こんな動作...
-
Excelの数式について教えてくだ...
-
ExcelのVBAコードについて教え...
-
VBA 同じフォルダ内のすべての...
-
不要項目の行削除方法について
-
Vba 型が一致しません(エラー1...
-
【マクロ】オートフィルターに...
-
【VBA】 結合セルに複数画像と...
-
VBAで特定の文字が入った行をコ...
-
ExcelのVBAコードについて教え...
-
VBAでセルの書式を変えずに文字...
-
VBAのエラー表示の対処法について
-
Excelのマクロについて教えてく...
-
Excel マクロについて詳しい方...
おすすめ情報