1

彼はそこにいます、私はVBスクリプトが初めてで、メールアドレスをコンボボックスの選択に変更するために選択ケースを作成しようとしています。簡単に考えていることはわかっていますが、方向性について助けが必要です。コンボボックスは機能しますが、コンボボックスで選択された値を取得して選択ケースをトリガーできません。

  Sub Item_Open()

  Set FormPage = Item.GetInspector.ModifiedFormPages("Message")

  Set Control = FormPage.Controls("Subject")

  Control.PossibleValues = "SPOED;STATUS;MANCO;KLACHT;TRANSPORT;TRACKING;INKOMEND;REPARATIE;RETOUREN;LADEN;MILKRUN"

  Set MyPage = Item.GetInspector.ModifiedFormPages("Message")
    Set Mail = MyPage.Item("Subject").Value

    Select Case Mail
        Case SPOED   
            Item.To = "hihi@blabla.com"         

        Case STATUS
            Item.To = "haha@blabla.com"

        Case else
            Item.To = ""    

    End Select

End Sub
4

1 に答える 1

0

MyPage.Item("Subject").Value「STATUS」のような文字列値を返すと仮定します。次に、文字列変数でそれを取得する必要があります。

strMail = MyPage.Item("Subject").Value  ' look ma, no Set!

このSelect Case Xステートメントは、X式を評価し、それをパーツ内の値Y、...と比較して、Case YXとY(の値)が等しい最初のブロックを実行します。これをstrMail「SPOED」のような文字列を含むものに適用するには、ケースY式は文字列リテラルである必要があります。

Select Case strMail
   Case "SPOED"
     ...
   Case "STATUS"
     ...

を使用した場合Option Explicit、VBScriptは、SPOED(etc)は(まともな)と等しくなることのできない単一化変数である(と理解される)と言っていたでしょうstrMail

于 2012-10-12T13:01:46.990 に答える