Aller au contenu

Messages recommandés

Posté(e)

Bonsoir,

Voila après des recherches sur le VBA , je commence un peu à me familiariser....

Mon interet avec le VBA serait de coupler avec une connexionBD

Car d'après les sujets le VBA est simple pour coupler une base de donnée access par exemple..

Connaissant (enfin je me débrouille sur Access) ce programme, j'aimerais faire appel à Access avec une liaison AutoCAD, alors je recherche le ou les moyens de communiquer entre AutoCAD et Access

 

Du genre dans access un champ m² et dans AutoCAD un Attribut qui se réfère au champ m²...

 

Je suis sur que cela est possible et c'est seulement la que je me servirais des connexionsBD

 

merci de prêter attention à ce message, c'est un peu comme une bouteille à la mer :(

 

Sinon quelle serait l'ouvrage qui pourrait d'apres vous m'apprendre (sans trop rentrer dans les détails) le VB(A)..

 

Bon Week End

"Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."

J-C Van Damme

Posté(e)

Bonjour,

 

Si j' ai bien compris, voici une approche.

Après avoir créer une base (bd1)

avec 2 champs :

id_test (numéro_auto)

surface (numérique)

enregistrée sur C:

 

Le code suivant demande à sélectionner un bloc avec attribut, à créer donc, (étiquette "surface") ayant reçu une valeur.

 

Cette valeur est envoyée dans la base.

 

Dim access As access.Application
Dim mabase As Database
Dim enreg As Recordset
Dim atsurf As Long
Dim obj As Object
Dim attribut As Variant
Dim bloc As AcadBlockReference
Dim chemin As String
Dim nbr As Integer


Public Sub adb()


ThisDrawing.Utility.GetEntity obj, "sélectionnez le bloc"
If obj.ObjectName = "AcDbBlockReference" Then
Set bloc = obj
If bloc.HasAttributes Then attribut = bloc.GetAttributes
Dim I As Integer

For I = LBound(attribut) To UBound(attribut)
If attribut(I).TagString = "SURFACE" Then valeur = attribut(I).TextString
Next
End If

chemin = "C:/bd1.mdb"
Set access = CreateObject("Access.Application")
access.OpenCurrentDatabase chemin

Set mabase = access.CurrentDb
Set enreg = mabase.OpenRecordset("Table1", dbOpenTable)

enreg.AddNew
enreg("id_test") = 4
enreg("surface") = valeur
enreg.Update
access.CloseCurrentDatabase

End Sub 

Posté(e)

Voici un ouvrage intéressant mais un peu léger lorsqu'on s'implique vraiment...

http://www.editions-eyrolles.com/Livre/9782212115970/programmer-autocad-avec-diesel-autolisp-dcl-et-vba

 

bon courage

ATEGIE - Bureau d'Études Fluides

http://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.png

Exécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffrage

www.ategie.fr

Posté(e)

Bonjour,

 

Le code étant dans un module Autocad, j' ai oublié de préciser dans mon exemple que les références aux objets ACCESS devaient être chargées bien sûr.

Microsoft DAO 3.6 Object Library et Microsoft ACCESS 9.0 Object Library

 

Egalement dans la base "bd1" créer la table "Table1" qui contient les champs.

 

C'est un exemple; il n'est pas optimisé.

Si plusieurs attributs sont à récupérer, il faut adapter, et faire attention aux doublons pour le champ "id_test".

Posté(e)

Merci pour vos réponses, je vais éssayer plus tard, car en ce moment il me faudrais des journées de plus de 24 heures....

 

Mais cela va ravir un certain N...... S........... qui exhibe les heures sup.....

N............... au cas ou tu n'aurais pas compris les heures supplémentaires et ben je te laisse l'adresse de mon patron et tu lui en cause deux mots........

 

Trop fort Nicolas........

 

Désolé cela n'a rien a voir avec le message, mais bon il me fait trop rire!!!!!! et surtout me rappelle un certain dictateur................................................................................... :casstet:

 

Je vous rassure il n'est la que pour 5 ans voir 10

"Je suis fasciné par l'air. Si on enlevait l'air du ciel, tous les oiseaux tomberaient par terre... Et les avions aussi... En même temps l'air tu peux pas le toucher... Ca existe et ça existe pas... Ca nourrit l'homme sans qu'il ait faim... It's magic ! L'air c'est beau en même temps tu peux pas le voir, c'est doux et tu peux pas le toucher... L'air, c'est un peu comme mon cerveau..."

J-C Van Damme

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité