VBA Excel qui commande AutoCAD

jp -  
 Yoda -
Bonjour,

Lorsque je clique un bouton dan sun UserForm, celui ci m'emmène sur AutoCad .
Le soucis que j'ai c'est que lorsque je suis sur AutoCad, il faudrait qu'il me demande d'entrée une valeur.
Par exemple qu'AutoCad me demande "Veuillez indiquer le nombre de voiture" et que je rentre la valeur puis que lorsque j'appuie sur entrer il me le valide.

Est ce que quelqu'un sait comment faire ceci svp ?
Merci
JP

1 réponse

  1. Yoda
     
    Bonjour,

    En VBA, tu peux entrer une valeur avec InputBox. Par exemple

    nombre_voitures = Val(InputBox("Entrez le nombre de voitures"))

    ça marche aussi bien dans VBA Excel que dans VBA Autocad.

    Reste à voir ou tu vas placer cette instruction, sans plus renseignements je ne peux pas en dire plus.

    ;)
    0
    1. JP
       
      Je vais voir poour plus de renseignement car c'est pour un collègue, demain j'en aurai plus je pense
      0
    2. JP
       
      Bonjour,

      Ce que vous m'avez donné marche.
      Maintenant j'ai deux questions:

      Question 1:
      Existe t'il une commande qui une foi la valeur entrée dans la "IMPUTBOX" il me ramène automatiquement sur AutoCad sans avoir besoin d'appuyer a chaque foi sur les onglets en bas ?

      Question 2:

      Et ce que c'est possible qu'a la place de "IMPUTBOX" il me demande la valeur directement sur AutoCad ?

      Merci
      JP
      0
    3. Yoda
       
      Je ne sais pas pas comment tu as monté ton programme, alors difficile de répondre avec précision.
      A quel moment as-tu besoin d'entrer cette valeur?.
      Si j'ai bien compris, tu as un bouton sur un UserForm Excel qui lance Autocad et qui charge un plan DWG.
      Après, que ce passe-t-il? C'est quoi les onglets en bas sur lesquels tu appuyes?
      Peut-être que si je voyais ton code, j'y verrai plus clair.
      :)
      0
    4. JP
       
      Oui voila j'ai un UserForm Excel avec un bouton qui s'intitue "Selectionner_autocad".
      Voila donc mon code en entier pour se bouton.

      "SaisirPoint" est une fonction qui permet de dire le point d'insertion du texte sur AutoCad

      Private Sub Bouton_selection_autocad_Click()
      Dim pointinsertion As Variant
      Dim i As Integer
      Dim Nombre_guardians As Long
      TextBox_valeur_guardians.Value = 0
      Nombre_guardians = 0
      For i = 1 To TextBox_nombre_de_terrasses.Value
      Nombre_guardians = Val(InputBox("Entrer le nombre de guardians"))
      TextBox_valeur_guardians = CStr(CDbl(TextBox_valeur_guardians) + Nombre_guardians)
      pointinsertion = SaisirPoint("Point d'insertion du texte")
      Call EcrireTexte("Guardians = " & Nombre_guardians, pointinsertion)
      Next i
      End Sub
      0
    5. Yoda
       
      Voila comment activer la fenêtre Autocad, si ça répond à ta question

      Private Sub Bouton_selection_autocad_Click() 
      Dim pointinsertion As Variant 
      Dim i As Integer 
      Dim Nombre_guardians As Long 
      TextBox_valeur_guardians.Value = 0 
      Nombre_guardians = 0 
      For i = 1 To TextBox_nombre_de_terrasses.Value 
      Nombre_guardians = Val(InputBox("Entrer le nombre de guardians")) 
      TextBox_valeur_guardians = CStr(CDbl(TextBox_valeur_guardians) + Nombre_guardians) 
      
      ' Connexion avec AutoCAD (on active AutoCAD s'il est en cours d'exécution) 
      Dim AcadApp As AutoCAD.AcadApplication 
      On Error Resume Next 
      Set AcadApp = GetObject(, "AutoCAD.Application") 
      On Error GoTo 0 
      If AcadApp Is Nothing Then 
      Msgbox "AutoCAD n'est pas démarré"
      Exit Sub
      End If 
      AcadApp.Visible = True 
      
      pointinsertion = SaisirPoint("Point d'insertion du texte") 
      Call EcrireTexte("Guardians = " & Nombre_guardians, pointinsertion) 
      Next i 
      End Sub
      0