2017-11-09 7 views
0

こんにちは、手動で手動で行うことなく、AutoCadの入力ボックスに自動的に挿入して回答を入力するExcelでマクロを実行する方法は?どのように私は以下の私のコードを変更する必要があります:自動的にInputBoxに回答を入力

Sub DWG() 
Pump: ans = InputBox("1 = STD Piping" & vbCrLf & _ 
      "2 = Omit Pump" & vbCrLf & _ 
      "3 = SBPP", "Pump Piping") 

Select Case ans 

Case "1": 
: Set layerObj = ThisDrawing.Layers.Add("PUMP_PIPING_" & Size) 
      layerObj.LayerOn = True 
Case "2": 

: Set layerObj = ThisDrawing.Layers.Add("OMIT_PUMP_" & Size) 
      layerObj.LayerOn = True 
Case "3": 

: Set layerObj = ThisDrawing.Layers.Add("STBP_" & Size) 
      layerObj.LayerOn = True 


Case Else: MsgBox "Wrong Input Dude.", vbCritical, MSG: Exit Sub 

End Select 
+3

ユーザーの介入を望まない場合は、なぜ入力ボックスを開きますか? – FunThomas

+0

私はinputBoxを使い始めましたが、今はgooeyを作成して、ユーザーが別のオプションを入力するだけで "go"ボタンを押してコマンドを生成できるようにしたいと思います。だから、InputBoxにリンクされているコードが多すぎるので – Kwezi

答えて

0

あなたは簡単な方法で自動的にInputBox関数を「入力」することはできません - そして私はあなたがいけないと思うことが可能である場合でも - あなたのコードは、悪夢を取得します。

あなたのルーチンにオプションのパラメータとして選択し、「作った」とパラメータが省略された場合にのみ、InputBox関数を示して渡すことができます。

Sub DWG(Optional answer As String = "") 

    If answer = "" Then 
     answer = InputBox("1 = STD Piping" & vbCrLf & _ 
      "2 = Omit Pump" & vbCrLf & _ 
      "3 = SBPP", "Pump Piping") 
    End If 
    select case answer 
     .... 
end sub 

ただし、すべてのコードを通して行くからあなたを保存しないということを。

関連する問題