Você está aqui: AutoCAD VBA ::: AutoCAD + Excel ::: Controlar o AutoCAD a partir do Excel |
Como acessar o AutoCAD a partir do Excel e retornar sua versãoQuantidade de visualizações: 609 vezes |
|
Nesta dica eu mostro os passos iniciais para iniciar uma interação com o AutoCAD a partir do Excel. O único conhecimento necessário é a habilidade básico de criação de macros simples no Excel usando o Editor Visual Basic (visível na aba Desenvolvedor). Antes de executar o código abaixo, adicione uma referência ao AutoCAD 2021 Type Library (o seu deve ser bem parecido, dependendo da sua versão do AutoCAD). Para isso vá em Ferramentas -> Referências. Localize a biblioteca AutoCAD 2021 Type Library, use os botões de prioridade para jogá-lo o mais alto que puder e clique o botão OK. Depois de adicionada a referência, nós definimos duas variáveis públicas, uma do tipo AcadApplication e outra do tipo AcadDocument. A variável AcadApplication representará o objeto AutoCAD, enquanto AcadDocument representará o documento ativo no AutoCAD. Para acessar o AutoCAD a partir do Excel nós usamos uma chamada à função Interaction.GetObjec(, "AutoCAD.Application"), que pode também ser Interaction.GetObject(, "AutoCAD.Application.22"). O restante do código está bem comentado e fácil de entender. Veja o código Excel VBA completo para o exemplo:
' Não se esqueça de adicionar a referência ao
' AutoCAD 2021 Type Library
' Ferramentas -> Referências -> AutoCAD 2021 Type Library
' Mova esta referência o mais alto que puder usando as
' setas para cima e para baixo
Option Explicit
' vamos declarar a variável que representará a aplicação AutoCAD
Public acadApp As AcadApplication
' e uma variável para representar o documento do AutoCAD
Public acadDoc As AcadDocument
' corpo da macro que acessa o AutoCAD e retorna a sua versão
Sub AcessarAutoCAD()
' em caso de erro
On Error Resume Next
' vamos obter a aplicação AutoCAD
Set acadApp = Interaction.GetObject(, "AutoCAD.Application")
' poderia ser também
' Set acadApp = Interaction.GetObject(, "AutoCAD.Application.22")
' houve erro?
If Err Then
' vai mostrar na janela de Verificação imediata
Debug.Print "Erro: " & Err.Number
Debug.Print Err.Description
Debug.Print "Iniciando o AutoCAD"
Err.Clear
' criamos uma nova instância do objeto AcadApplication
Set acadApp = New AcadApplication
' poderia ser também
' Set acadApp = Interaction.CreateObject("AutoCAD.Application.22")
' tornamos a aplicação visível na tela
acadApp.Visible = True
' houve erro
If Err Then
MsgBox "Erro: " & Err.Description
Exit Sub
End If
End If
' Se chegou até aqui, então deu tudo certo
Debug.Print "Executando " + acadApp.Name + " versão " + acadApp.Version
' obtemos o documento ativo
Set acadDoc = acadApp.ActiveDocument
' não existe documento aberto no AutoCAD?
If acadDoc Is Nothing Then
' criamos um novo documento
Set acadDoc = acadApp.Documents.Add
End If
' não há espaço ativo?
If acadDoc.ActiveSpace = 0 Then
acadDoc.ActiveSpace = 1
End If
End Sub
Ao executar esta macro no Excel nós teremos o seguinte resultado: Executando AutoCAD versão 24.2s (LMS Tech) Note que a mensagem Debug.Print será exibida na Janela de Verificação do Microsoft Visual Basic for Application. Se essa janela não estiver visível, vá em Exibir -> Janela "Verificação Imediata". |
|
|
Veja mais Dicas e truques de AutoCAD VBA |
Dicas e truques de outras linguagens |
|
wxWidgets - Como usar a classe wxFrame para criar a janela principal de suas aplicações C++ wxWidgets |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




