精華區beta Visual_Basic 關於我們 聯絡資訊
※ 引述《Redfireant (紅火蟻)》之銘言: : 請問Select Case和If...Then...ElseIf有什麼不一樣 : 我看書上感覺二個是一樣的東西 : Select Case是不是可以完全被If...Then...ElseIf取代 : Select Case如果可以被取代或完全不用 : 是不是表示Choose也可以完全不用 : VB內Goto是不是可以完全不用 : 只要用loop或其他條件判斷的指令 : 謝謝 簡單的說,IF常被用在"不同變數"多條件的判斷... EX: if A>20 and B >3 and C>30 then ..... end if 而Select常用在單一變數的多條件判斷.. Select case A case 1 To 4, 7 To 9, 11, 13, Is > MaxNumber end select 向上面的Select 要改成IF就繁瑣許多了 EX: if (A> 0 and A<5) or (A>6....... 而choose只能用在數字轉成文字, 實際的範例如數字轉成國字 choose(index,"一","二","三"....) 以下是更詳盡的介紹,摘路自MSDN ---------------------------- Choose(index, choice-1[, choice-2, ... [, choice-n]]) Choose 函數的語法具有以下幾個單元: 單元 描述 index 必要引數,此為數值運算式或欄位,它的運算結果是一個數值,且介在 1 和可選擇 的項目數之間。 choice 必要引數,此為 Variant 運算式,包含一個以上的選擇項目。 請注意 Choose 會根據 index 的值來傳回串列中的第幾個選擇項。如果 index 是 1 ,則 Choose 會傳回串列中的第 1 個選擇項。如果 index 是 2,則 Choose 會傳回串列中的第 2 個 選擇項,以此類推。 您可以使用 Choose 來查閱一個串列中的項目。例如,如果 index 所指定的值為 3 ,而 choice-1 = "one" 、 choice-2 = "two" 、且 choice-3 = "three" ,那麼 Choose 將傳 回 "three" 。當 index 可代表一群選項中的值時,則這項功能將會特別有用。 Choose 會計算串列中的每個選擇項,即使它只傳回一個選項值。所以您應該注意這項副作 用,例如,當您在每個選擇項中使用了 MsgBox 函數作為運算式的一部分,那麼每計算一 個選擇項,就會顯示一次訊息方塊。 如果 index 小於 1,或大於可選擇的項目個數時,則 Choose 函數會傳回一個 Null。 如果 index 不是整數,則會先換算為與其最接近的整數。 ---------------------------------- GOTO是通常不用的.... 結論:每個指令被設計出來,都是有他的用意所在... IF用在多變數 SELECT用在一個變數 CHOOSE則是數字轉文字在用的.... 這樣瞭解嗎?看用途來選擇指令吧,但是其實都是可以用的就是了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.225.129.236