• ベストアンサー

Select Case文についてご教授お願いします。

助けて下さい。Select Case文についてご教授お願いします。現在VB2008にてプログラムを作成しているのですが、どうにも煮詰まってしまいました。 作成内容は、Excelの任意のSheetから文字をVB上のTextBox1~50に呼び出し、その内いくつかをCheckBoxとButtonを使用してRichTextBox1に表示させると共に、TextBox51に入力した文字をExcelから呼び出した任意の文字に対応したセルへ保存というものです。Excelからの呼び出しにIf文を使用しているため、同一プロシージャ内で別のIf文を使用してしまうと、先のIf文で決めた変数が反映されないためSelect Case文を使用して保存をさせようとしているのですが上手くいきません。以下に現在のコードを記載しますのでよろしくお願いいたします。 Private Sub Button1_Click~ Excel取得コード If RadioButton1.Checked = True AndAlso RadioButton13.Checked = True Then 'Sheetと列を選択 tuki = CType(Book.Worksheets.Item(2), Microsoft.Office.Interop.Excel.Worksheet) 'Sheet情報 COLUMN1 = "B" '列1情報 COLUMN2 = "F" '列2情報 ・ ・ ・ End If 'ここから先は指定したTextBoxをRichTextBoxに表示(先のIf文内の変数は未使用) RichTextBox1.Clear() If Me.CheckBox1.Checked = True Then RichTextBox1.Text = TextBox1.Text End If If Me.CheckBox2.Checked = True ThenIf RichTextBox1.Text <> "" Then RichTextBox1.Text = RichTextBox1.Text & "・" End If RichTextBox1.Text = RichTextBox1.Text & TextBox2.Text End If ・ ・ ・ End If 'ここから保存指示=エラー箇所 Select Case tuki.Range(COLUMN1 & "3").Value Case RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value tuki.Range(COLUMN2 & "3").Value = TextBox51.Text Book.Save() という感じで作成しているのですが「String "" から型 'Boolean' への変換は無効です」と表示されます。 他のケースではIf文の変数をSelect Caseに対応できたので、この方法を選択しました。 基本的にSelect Caseの使い方が誤っていると思うのですが解決策が見つかりませんでした。 他の方法も含めて、良い案がありましたらご教授お願いいたします。 長文申し訳ありません。

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

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

If A = 1 Then  (A が 1 のときの処理) ElseIf A = 2 Then  (A が 2 のときの処理) Else  (1 でも 2 でもないときの処理) End If この書き方をスマートにしたものがSelect Case文です。 Select Case A  Case 1   (A が 1 のときの処理)  Case 2   (A が 2 のときの処理)  Case Else   (1 でも 2 でもないときの処理) End Select 上記の2つの例のように、If~ElseIf~Else~End If や Select Case~End Select のブロックでは『選択肢のうちのひとつ』しか実行されません。クイズで言えば「3択問題を1問出題」している状態です。 質問者様が行おうとしているのは「2択問題を2問出題」だと思います。であれば、ひとつのブロックで片付けることはできません。条件式を2つばらばらに用意してください。 また、Select CaseもIfも書き方が違うだけで、内部の処理はほとんど違いがありません。「Ifを使っているからSelect Caseで…」という考えは改めたほうがよいかと。 以上を踏まえて・・・ (1) RichTextBox1.text と tuki.Range(COLUMN1 & "3").Value が一致したら保存。 (2) RichTextBox1.Text と tuki.Range(COLUMN1 & "5").Value が一致したら保存。 '(1) の実装 If RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value Then ' 保存処理 ★ End If '(2) の実装 If RichTextBox1.Text = tuki.Range(COLUMN1 & "5").Value Then ' 保存処理 ☆ End If こうしないと、★と☆を両方通過するコードになりません。Select Caseを1回だけでやろうとするのは仕様上不可能です。(なぜこれをひとつにまとめようとするのか、意図が掴めませんです) #他にも何箇所か訂正したいけど、長くなるのでひとまずここまで。

caster01
質問者

お礼

いつもありがとうございます。If文を使用して目的を達成することが出来ました。思考錯誤していた時に、同一プロジージャ内でIf文にて変数を宣言し、その下に改めてIf文にて保存のコードを書いた際、変数が宣言されていないとのエラーになってしまいました。そのため、他のケースで上手くいったIf文とSelect Case文との組み合わせならと思い試していたのですが、おっしゃるとおりいくつかを通過するコードは書けませんでした。今回、Wizard_Zero様に指摘して頂いたコードをもとに、再度If文を使用したところ、変数エラーも出ず無事に解決に至ることが出来ました。たぶん、前回変数エラーになったのはIf文のせいではなく、私のコードがおかしかったためだとわかり多くの方にご迷惑をおかけしたことを反省しております。この掲示板にはいつも助けられ本当に勉強になりました。何分プログラムというものに触れて日が浅いため、勉強不足で突っ込みどころ満載のコードしか書けませんが、勉強を続けていきたいと思います。皆さん本当にありがとうございました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

Selec Case A < ーー Aは色々な値を取るもの。変数など Case B     <ーー AがBの場合   (この場合に該当する場合の処理) ・・ End Select のような書き方をするはず。 ところが、質問では Case A=B のような、CASEがあたかもIF分のような書き方をしている。 Select Case tuki.Range(COLUMN1 & "3").Value Case RichTextBox1.text (この場合の処理) に改めてはどうでしょう。

caster01
質問者

お礼

ご回答頂きありがとうございます。多くの方にお知恵を貸して頂いたおかげで、非常に勉強になるとともに無事目的を達成することが出来ました。本当にありがとうございました。本当は皆さんに良回答を贈呈させて頂きたいのですが、システム上出来ないため最初の回答者様と、解決の方法を提案してくださった最後の方に贈呈しますことをお許し下さい。

caster01
質問者

補足

imogasi様、ご回答ありがとうございます。補足にありますように Select Case RichTextBox1.Text Case tuki.Range(COLUMN1 & "3").Value tuki.Range(COLUMN2 & "3").Value = TextBox51.Text Book.Save() End Select Select Case RichTextBox1.Text Case tuki.Range(COLUMN1 & "5").Value tuki.Range(COLUMN2 & "5").Value = TextBox51.Text Book.Save() End Select も試して見ましたが、一つずつなら良いのですが同時には無理でした。駄目もとで Select Case RichTextBox1.Text Case tuki.Range(COLUMN1 & "3").Value tuki.Range(COLUMN2 & "3").Value = TextBox51.Text Book.Save() Case tuki.Range(COLUMN1 & "5").Value tuki.Range(COLUMN2 & "5").Value = TextBox51.Text Book.Save() End Select も試しましたがやはり2つ同時の保存は出来ませんでした。

回答No.2

> Excelからの呼び出しにIf文を使用しているため、同一プロシージャ内で別のIf文を使用してしまうと、先のIf文で決めた変数が反映されないため この時点で、Ifの使い方がよくわかってないように思いますが、具体例がないのでどこが問題なのかまではわかりません。 > Select Case tuki.Range(COLUMN1 & "3").Value > Case RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value これだと、「tuki.Range(COLUMN1 & "3").Value」(最初の行のCase以下)が「RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value」と等しい場合にそれ以下の処理をする、という意味になります。 「RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value」は比較した結果のためBoolean型なのでエラーになります。 最初の行で、比較対象は「tuki.Range(COLUMN1 & "3").Value」であると示しているので、次の行のCaseには、それと比較したいものだけを記述すればいいのです。「Case RichTextBox1.text」と記述すれば、「tuki.Range(COLUMN1 & "3").ValueがRichTextBox1.textと等しい場合に以下の処理をする」ということになります。

caster01
質問者

お礼

ご回答頂きありがとうございます。多くの方にお知恵を貸して頂いたおかげで、非常に勉強になるとともに無事目的を達成することが出来ました。本当にありがとうございました。本当は皆さんに良回答を贈呈させて頂きたいのですが、システム上出来ないため最初の回答者様と、解決の方法を提案してくださった最後の方に贈呈しますことをお許し下さい。

caster01
質問者

補足

cistronezk様・ m-take0220様回答頂きありがとうございます。おかげさまでエラーは出なくなりました。ところが、教えて頂いたことを参考に書きのように修正したのですが、一つずつなら保存出来るのですが同時に複数選択してしまうと保存されませんでした。正直、初心者で知識が不足しており何度も質問するのは申し訳ないのですが良い案があればご教授お願いいたします。 パターン1 Select Case RichTextBox1.Text Case tuki.Range(COLUMN1 & "3").Value tuki.Range(COLUMN2 & "3").Value = TextBox71.Text Book.Save() End Select Select Case RichTextBox1.Text Case tuki.Range(COLUMN1 & "5").Value tuki.Range(COLUMN2 & "5").Value = TextBox71.Text Book.Save() End Select パターン2 Select Case tuki.Range(COLUMN1 & "3").Value Case RichTextBox1.Text tuki.Range(COLUMN2 & "3").Value = TextBox71.Text Book.Save() End Select Select tuki.Range(COLUMN1 & "5").Value Case RichTextBox1.Text tuki.Range(COLUMN2 & "5").Value = TextBox71.Text Book.Save() End Select いづれの場合もtuki.Range(COLUMN1 & "3").Valueとtuki.Range(COLUMN1 & "5").Valueを同時に保存しようとすると何も保存されません。1つずつ選択すれば希望とおりの動作をしてくれるのですが同時には無理なのでしょうか?

回答No.1

とりあえず、 >Case RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value は Case RichTextBox1.text ですかね。 If文のつもりで「RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value」と書いてしまったのでしょうが、これでは「tuki.Range(COLUMN1 & "3").Value」と「RichTextBox1.text = tuki.Range(COLUMN1 & "3").Value(つまり, TrueかFalse)」と比較していますのでエラーになります。

caster01
質問者

お礼

ご回答頂きありがとうございます。多くの方にお知恵を貸して頂いたおかげで、非常に勉強になるとともに無事目的を達成することが出来ました。本当にありがとうございました。

関連するQ&A

  • 条件判断について教えて下さい。

    VB2008を使用している初心者です。 現在、RichTextBoxとCheckBoxとそれに対応したTextBoxを準備し、CheckBoxがTrueのTextBox.TextをRichTextBoxに代入するプログラムを作成しています。RichTextBoxにはCheckBoxをTrueにした分だけ複数のTextBox.Textを代入させています。ここまでのプログラムは下記コードで問題なく作動しています。 Button1を押す。 RichTextBox1.Clear() If Me.CheckBox1.Checked = True Then RichTextBox1.Text = TextBox1.Text End If If Me.CheckBox2.Checked = True Then If RichTextBox1.Text <> "" Then RichTextBox1.Text = RichTextBox1.Text & "・" End If RichTextBox1.Text = RichTextBox1.Text & TextBox2.Text End If ・ ・ ・ If Me.CheckBox20.Checked = True Then If RichTextBox1.Text <> "" Then RichTextBox1.Text = RichTextBox1.Text & "・" End If RichTextBox1.Text = RichTextBox1.Text & TextBox20.Text End If ここで問題なのですが、RichTextBox1への代入完了後、FalseにしたCheckBoxを再度True(代入時に選択したもののみ)にするコードをButton2に作成したいのですが上手くいきません。例えば下記のコードですと、RichTextBoxに1つだけTextBoxが入っている場合しかCheckBoxのTrueが戻りません。 If Me.CheckBox1.Checked = False Then If RichTextBox1.Text = TextBox1.Text Then Me.CheckBox1.Checked = True End If End If ・ ・ ・ If Me.CheckBox20.Checked = False Then If RichTextBox1.Text = TextBox20.Text Then Me.CheckBox2.Checked = True End If End If これはIf RichTextBox1.Text = TextBox1.Text Thenにしてしまっているためだと思いますが、これをどう修正したら良いかわかりません。もしお時間がある方みえましたらご教授お願いいたします。

  • CheckBoxがTrueの場合に表示をさせるには?

    VB2008を使用しています。 3つのCheckBox1~3とそれに対応した3つのTextBox1~3を準備し、 Buttonを押すとCheckBoxがTrueのものだけをRichTextBox1に表示 させたくて下記のプログラムを作成しました。 しかしCheckBox1とCheckBox3については上手く作動するのですが CheckBox2について不具合が発生します。 (不具合) CheckBox1=TrueでButtonを押すとRichTextBox1にTextBox1を表示。 その後、CheckBox3=TrueでButtonを押すとRichTextBox1にTextBox1. TextBox3と表示。 ここまでは良いのですが、 CheckBox2=TrueでButtonを押すとRichTextBox1にTextBox2を表示。 その後、CheckBox3=TrueでButtonを押すとRichTextBox1にTextBox2. TextBox2.TextBox3と表示されてしまいTextBox2の内容が重複して しまいまいます。 何か良い解決策がありましたら教えて下さい。 よろしくお願いいたします。 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click     If Me.CheckBox1.Checked = True Then RichTextBox1.Text = TextBox1.Text End If     If Me.CheckBox2.Checked = True Then If RichTextBox1.Text <> "" Then RichTextBox1.Text = RichTextBox1.Text & "."     End If RichTextBox1.Text = RichTextBox1.Text & TextBox2.Text     End If If Me.CheckBox3.Checked = True Then If RichTextBox1.Text <> "" Then RichTextBox1.Text = RichTextBox1.Text & "." End If RichTextBox1.Text = RichTextBox1.Text & TextBox3.Text End If End Sub

  • RichTextBoxに代入されたTextBoxの数を表示

    VB2008を使用しています。現在、10個のTextBoxとそれに対応するCheckBoxを作成し、チェックの入ったTextBox内の文字をRichTextBoxに代入するプログラムを作成しています。そこでRichTextBoxに代入されたTextBoxの数を別のTextBoxに表示させたいのですが何か良い方法はありますでしょうか?現在、下記のようにコードを組んであります。 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click RichTextBox1.Clear() If Me.CheckBox1.Checked = True Then RichTextBox1.Text = TextBox1.Text If Me.CheckBox2.Checked = True Then If RichTextBox1.Text <> "" Then RichTextBox1.Text = RichTextBox1.Text & "・" End If RichTextBox1.Text = RichTextBox1.Text & TextBox2.Text ・ ・ ・ If Me.CheckBox10.Checked = True Then If RichTextBox1.Text <> "" Then RichTextBox1.Text = RichTextBox1.Text & "・" End If RichTextBox1.Text = RichTextBox1.Text & TextBox10.Text End If

  • if文からcase文への置き換え

    ピクチャボックスをクリックしたら、チェック ボックスがチェックされるメソッドを作りたいと 思っています。 Private Sub PictureBox_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click,PictureBox2.Click 'ここから If sender Is PictureBox1 Then If Me.CheckBox1.Checked = False Then Me.CheckBox1.Checked = True Else Me.CheckBox1.Checked = False End If ElseIf sender Is PictureBox2 Then If Me.CheckBox2.Checked = False Then Me.CheckBox2.Checked = True Else Me.CheckBox2.Checked = False End If End If 'ここまで End Sub 上記のif文をCase文に置き換えたくて、 'ここから Select Case sender Case PictureBox1 If Me.CheckBox1.Checked = False Then Me.CheckBox1.Checked = True Else Me.CheckBox1.Checked = False End If Case PictureBox2 If Me.CheckBox2.Checked = False Then Me.CheckBox2.Checked = True Else Me.CheckBox2.Checked = False End If End Select 'ここまで 上記のように書き換えたのですが、エラーが出てしまいます(ビルドは通るのですが)。 Case文の使い方が間違っているんだとは思いますが、どこがどう 間違っているのがよくわかりません。 ご教授いただけないでしょうか?

  • ラジオボタンのチェック

    Visual Basic 2010 Express windows7 Pro dmyが何であるかでラジオボタンのチェックを入れたいのですが、 下記の場合はそれぞれの値でチェックが入りません。 dmy = My.Computer.FileSystem.ReadAllText("dmy.txt") Select Case dmy Case "aaa" RadioButton4.Checked = True Case "bbb" RadioButton6.Checked = True Case "ccc" RadioButton7.Checked = True End Select 下記の場合、CheckBox7にチェックが入ると、 RadioButton1はオフになったので、 Trueにするだけで出来ると思ったのですが、変わりませんでした。 If CheckBox7.Checked Then RadioButton1.Checked = False End If

  • Visual Basic 合計がうまく出せません。

    Visual Basicを習い始めたばかりですので、コードが分かり難くてすみません。チェックボックスとラジオボタンを使って合計等を出したいのですが、下のコードだとTax、Subtotal、Totalが0になってしまいます。各々のチェックボックスとラジオボタンに下のコードを入れてから、合計等が0になってしまいました。その前は、きちんと計算は出来ていたのですが。ご教授宜しくお願いいたします。 ---------------------- Private Sub Checkbox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Checkbox1.CheckedChanged Dim checkbox1 As Double = 450.40 Dim checkbox2 As Double = 871.65 Dim checkbox3 As Double = 1860.56 Dim radiobutton1 As Integer = 0 Dim radiobutton2 As Double = 250.45 Dim radiobutton3 As Double = 674.24 Dim sum As Double If checkbox1.Checked = True Then sum += checkbox1 End If If checkbox2.Checked = True Then sum += checkbox2 End If If checkbox3.Checked = True Then sum += checkbox3 End If If radiobutton1.Checked = True Then sum += radiobutton1 End If If radiobutton2.Checked = True Then sum += radiobutton2 End If If radiobutton3.Checked = True Then sum += radiobutton3 End If txtSum.Text = FormatCurrency(sum) End Sub ---------------------------- Private Sub btnCalculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCalculate.Click Dim Car As Double Dim Tax As Double Dim Sum As Double txtTax.Text = Format((Car + Sum) * (0.12), "$######.##") ‘Taxの計算 txtSubtotal.Text = Format(Car + Sum + Tax, "$######.##") ‘Subtotalの計算 Dim Subtotal As Double Dim Trade As Double txtTotal.Text = Format(Subtotal + Tax, "$######.##")  ‘合計の計算 End Sub -----------------------

  • VisualBasicの作業でわからないことが・・・教えてください!

    大学生です。プログラミングの授業でVisualBasicを利用しているのですが、わからずに先に進めない状態なので、どなたか教えてください! ListBox(強中弱) × 1 CheckBox × 12 TextBox(点数表示) × 1 があります。やりたいことは、『CheckBoxにチェックを入れたとき、ListBoxで選んだレベルに応じた点数をTextBoxに表示させたい』です。 例えば、ListBoxで強を、かつCheckBox(のとある項目)にチェックを入れたら、TextBoxに『5点』と表示させるようなプログラムです。強が何点で中が何点かと言うのは定義してありますので問題ないです。しかも、チェックをはずすと、それと同じ点数をマイナスにするようにもしたいんです。 どうすればよいのでしょうか?ちなみに現段階まで作ってあるのは以下の通りです。 Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged Dim point As Integer If CheckBox1.Checked = True Then Select Case ListBox1.SelectedIndex Case 0 point = 10 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If TextBox1.Text = goukei pre_goukei = goukei Case 1 point = 6 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If TextBox1.Text = goukei goukei = pre_goukei Case 2 point = 3 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If Case 3 point = 0 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If End Select Else Select Case ListBox1.SelectedIndex Case 0 point = 10 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If Case 1 point = 6 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If Case 2 point = 3 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If Case 3 point = 0 If CheckBox1.Checked Then goukei = goukei + point Else goukei = goukei - point End If End Select End If TextBox1.Text = goukei End Sub 加算はできるのですが、減算をしてくれない状態です。ちなみに、case3から下はまだ手付けずです。他にもっと効率の良いやり方があるのかもしれませんが、IFとCASEを利用して作ると言うカテゴリにいるので、その点も踏まえて、これでわかる方がいましたら、よろしくお願いします。

  • ユーザーフォームのデータ

    ユーザーファームを2つ作成しました。 そのユーザーフォームのデータを表の最終行に追加をしたいのです。 Range("A65536").End(xlUp).Offset(1,0).select を使おうと思っていますが、うまくいきません。 どなたか教えてください。 <ユーザーフォーム1> Private Sub CommandButton1_Click() Sheet2.Range("H7") = TextBox1 Sheet2.Range("I7") = TextBox2 Sheet2.Range("J7") = TextBox3 Sheet2.Range("K7") = TextBox4 Sheet2.Range("L7") = TextBox5 Sheet2.Range("P7") = TextBox6 If CheckBox1.Value = True Then Worksheets(2).Range("M7") = "0:30" Else Worksheets(2).Range("M7") = "0:00" End If If CheckBox2.Value = True Then Worksheets(2).Range("R7") = "1000" Else Worksheets(2).Range("R7") = "0" End If If CheckBox3.Value = True Then Worksheets(2).Range("S7") = "3000" Else Worksheets(2).Range("S7") = "0" End If If CheckBox4.Value = True Then Worksheets(2).Range("T7") = "1500" Else Worksheets(2).Range("T7") = "0" End If Unload Me End Sub <ユーザーフォーム2> Private Sub CommandButton1_Click() Sheet2.Range("V7") = TextBox1 Sheet2.Range("W7") = TextBox2 Sheet2.Range("X7") = TextBox3 Unload Me End Sub

  • select case文について

    リストから選択とリストに無い値の入力のリストへの追加をしたく、あちこちの情報をつぎはぎで下記のようにVBAで動かそうとしましたが、うまく動いてくれません。 前(Case A)は動くのですが、あと(Case 2)が機能しません。 それと、3つ以上をSelectCaseで組む場合の方法も合わせてお願いします。 Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range Dim LastR As Long Select Case Target.Address(0, 0) Application.EnableEvents = False Case "D1" With Worksheets("Sheet2") LastR = .Range("A36636").End(xlUp).Row Set c = .Range("A1:A" & LastR).Find( _ Target.Value, , xlValues, xlWhole, xlByColumns, xlPrevious, True) If c Is Nothing Then If vbNo = MsgBox("リストに追加しますか?", _ vbYesNo, "追加の確認") Then Application.EnableEvents = True Exit Sub End If .Range("A" & LastR + 1).Value = Target.Value .Range("A1:A" & LastR + 1).Name = "リストA" End If With Target.Validation .Delete .Add Type:=xlValidateList, Formula1:="=リストA" .ShowError = False End With Case "E1" With Worksheets("Sheet2") Set c = .Range("B1:B" & LastR).Find( _ Target.Value, , xlValues, xlWhole, xlByColumns, xlPrevious, True) If c Is Nothing Then If vbNo = MsgBox("リストに追加しますか?", _ vbYesNo, "追加の確認") Then Application.EnableEvents = True Exit Sub End If .Range("B" & LastR + 1).Value = Target.Value .Range("B1:B" & LastR + 1).Name = "リストB" End If End Select End With With Target.Validation .Delete .Add Type:=xlValidateList, Formula1:="=リストB" .ShowError = False End With Application.EnableEvents = True End Sub

  • CASE文のきじゅつについて

    帳票フォームである明細を照会する画面を作成しています。 そこで、詳細のテキストボックスにデータの値が 1の場合"○" 2の場合"×" 3の場合"☆" と表示したいのですが、テキストボックスのコントロールソースに1行で書く場合、 どのように書けばいいのでしょうか? IF文だと下記の場合、BBB=IIF(AAA="1","○","×")と書けますよね。 IF AAA="1" then BBB="○" ELSE BBB="×" END IF SELECT文だと下記の場合、1行で書くことができますか? SELECT CASE AAA CASE "1" BBB="○" CASE "2" BBB="×" CASE "3" BBB="☆" END SELECT

専門家に質問してみよう