ludo07 Posté(e) le 7 juin 2008 Posté(e) le 7 juin 2008 Bonjour à tous, Voilà 3 jours que j'essai et je n'y arrive pas. Je souhaite réaliser un programme qui parcours un répertoire que je choisirais dans lequel il y a des blocs .dwg.Ce programme ouvre tous les fichiers du repertoire execute une commande dans chaque fichiers puis les referment. Ayant en ma possession (que j'ai acheté) le bouquin de programmation VBA 2006 de Albert Thalheim, j'ai trouvé exactement ce que je voulais à la fin.Seulement quand je charge son programme (pour essayer) j'ai le message suivant http://cjoint.com/?ghr6HZjaoRBref windows prépare autocad pour installer quelque chose?????????????????????Mais comme autocad est ouvert ça ne marche pas.Donc j'ai pris le bouquin puis j'ai fait du copiage et quand je lance mon programme il bug surCommonDialog............ Quelqu'un à une idée LUMINEUSE. MerciA+
lili2006 Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 Bonjour à toutes et tous, Il faudrait que tu développes un peu et mettre le prog en question en ligne.Je ne vois pas qui pourrait répondre comme ça à ton pb ! Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Bred Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 Salut,Si j'ai bien compris, tu cherches à réaliser un programme d'automatisation de script.Fais une recherche dans les forum avec "auto script", je pense que c'est ce que tu cherches à faire. Si c'est pour le plaisir de réaliser ton programme, vu le message que tu as, il faudrait vraiment que tu mettes ton code ici, comme le suggère lili2006. Par contre, vérifie que ton code est bien fait pour la version d'Autocad que tu as, car souvent il y a des différences. Bon courage en tous les cas ! ;) Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
lili2006 Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 Re, Ok, bred à surement raison. Il y a alors ce très bel outil ( Super AutoScript)d'un membre actif de ce site, Eric. Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
ludo07 Posté(e) le 8 juin 2008 Auteur Posté(e) le 8 juin 2008 Salut à tous,Je vous remerci pour vos réponse mais de rage hier soir j'ai tous recommencé en partant des bases et surtout de ce que je connaissait (c'est à dire pas grand chose ...peut être). Mais je suis arrivé à faire un bout de code qui fonctionne maintenant il ne me reste plus qu'a faire une belle USERFORM et dévellopé d'autre options et je le mettrais en ligne. Comme quoi j'ai voulu gagner du temps en prenant un programme déjà fait mais finalement j'en ai perdu. Et puis c'est plus enrichissant de faire sois même. Mais j'hésiterais à poser des questions plus précise à l'avenir si j'ai un problème. MERCIA+
lili2006 Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 Re, Mais j'hésiterais à poser des questions plus précise à l'avenir si j'ai un problème. ???????!!! Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Bred Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 Et puis c'est plus enrichissant de faire sois même.En effet !Mais au bout d'un moment, pour avancer et ne pas se dégouter, il faut savoir demander de l'aide.Et crois en mon expérience, de l'aide ici, tu en auras plus que nécessaire ! Bon courage ! Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...
ludo07 Posté(e) le 8 juin 2008 Auteur Posté(e) le 8 juin 2008 Re lili2006, en effet je viens de relire mon post j'ai oublié le PASdans la dernière phrase. »Mais j'hésiterais PAS à poser des questions plus précise à l'avenir si j'ai un problème. A+
lili2006 Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 Re, J'en doutais PAS une seconde,... P'tite pointe d'humour dans ce monde de brutes,... ;) Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Patrick_35 Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 Salut N'étant pas spécialiste du vba, je ne pourrai te donner un exemple, mais au moins une direction avec les API comme BrowseForFolder par exemple @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lovecraft Posté(e) le 8 juin 2008 Posté(e) le 8 juin 2008 bonjour, voici ton bonheur j'avais fait ce p'tit prog pour lister un repertoire: Sub ListeFic1() Dim objShell As Object, objFolder As Object, oFolderItem As Object Dim Chemin As String 'récupère le nom du répertoire sélectionné Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&) On Error Resume Next Set oFolderItem = objFolder.Items.Item Chemin = oFolderItem.Path If Chemin = "" Then Exit Sub End If Dim ScanFic As Office.FileSearch Dim NomFic As Variant Dim Diag As String Dim Nbr As Long Dim I As Long Set ScanFic = Application.FileSearch With ScanFic .NewSearch .LookIn = Chemin ' adapter le nom du lecteur .SearchSubFolders = True .FileType = msoFilemsoFileTypeAllFiles Nbr = .Execute Diag = Format(Nbr, "0 ""fichiers trouvés""") I = 0 For Each NomFic In .FoundFiles I = I + 1 Sheets("Feuil1").Cells(I, 1).Value = NomFic ' adapter le nom de la feuille Next MsgBox Diag End With End Sub Dim objShell As Object, objFolder As Object, oFolderItem As Object Dim Chemin As String 'récupère le nom du répertoire sélectionné Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&) On Error Resume Next Set oFolderItem = objFolder.Items.Item Chemin = oFolderItem.Path If Chemin = "" Then Exit Sub End If End Sub J'espere qu'il te sera utile, il a été developpé sous excel mais je pense que tu pourras l'adapter pour autocad. @plus LB http://www.youtube.com/user/CADMINATOR?feature=mhee
ludo07 Posté(e) le 9 juin 2008 Auteur Posté(e) le 9 juin 2008 Bonjour à tous, Merci lovecraft pour ton programme, je vais l'essayer et vérifier ce que j'ai déjà fait pour adaptation voir correction. A+
didier Posté(e) le 9 juin 2008 Posté(e) le 9 juin 2008 Bonjour, toutes mes amitiés à Toi, LoveCraft,je ne garantis pas que le VBA Excel soit parfaitement compatible avec AutoCadpas les mêmes bibliothèques !en revanche, le programme suivant a été fait pour AutoCad, sans rancune, LoveCraft :red: amicalement Option Explicit Private Declare Function GetOpenFileName Lib "comdlg32.dll" _Alias _"GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long Private Type OPENFILENAMElStructSize As LonghwndOwner As LonghInstance As LonglpstrFilter As StringlpstrCustomFilter As StringnMaxCustFilter As LongnFilterIndex As LonglpstrFile As StringnMaxFile As LonglpstrFileTitle As StringnMaxFileTitle As LonglpstrInitialDir As StringlpstrTitle As Stringflags As LongnFileOffset As IntegernFileExtension As IntegerlpstrDefExt As StringlCustData As LonglpfnHook As LonglpTemplateName As StringEnd TypeDim OpenFile As OPENFILENAMEDim lReturn As LongDim sFilter As String Public Sub Explorateur() OpenFile.lStructSize = Len(OpenFile)sFilter = "Tous Fichiers (*.*)" & Chr(0) & "*.*" & Chr(0)OpenFile.lpstrFilter = sFilterOpenFile.nFilterIndex = 1OpenFile.lpstrFile = String(257, 0)OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1OpenFile.lpstrFileTitle = OpenFile.lpstrFileOpenFile.nMaxFileTitle = OpenFile.nMaxFileOpenFile.lpstrInitialDir = "C:\"OpenFile.lpstrTitle = "Choix du Fichier ..."OpenFile.flags = 0lReturn = GetOpenFileName(OpenFile)If lReturn = 0 ThenMsgBox "Annulation Utilisateur"ElseMsgBox "Fichier Choisi : " & Trim(OpenFile.lpstrFile)End If'Me.HideEnd Sub Sub ChoisirFichier()ExplorateurDim texte As Stringtexte = Left(OpenFile.lpstrFile, InStr(1, OpenFile.lpstrFile, Chr(0)) - 1)End Sub tu as compris que le prog à envoyer par Alt+F8 c'estChoisirFichier,le reste c'est de la mise en forme Éternel débutant... Mon site perso : Programmer dans AutoCAD
Patrick_35 Posté(e) le 9 juin 2008 Posté(e) le 9 juin 2008 ludo07 C'est bien la peine que je réponde. @- Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
didier Posté(e) le 9 juin 2008 Posté(e) le 9 juin 2008 oops, je viens te présenter mes excuses Patrick_35; mais je viens souvent de la barre "dernière réponse tous forums"et, dans ce cas, l'affichage se trouve sur le dernier messageet, cette fois-ci je n'ai pas remonté l'historique des réponses diffusées,et, tel le sanglier moyen j'ai copié-collé ce que j'avais en archives. je ferai plus attention la prochaine fois, promis. amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
Patrick_35 Posté(e) le 9 juin 2008 Posté(e) le 9 juin 2008 Salut DidierJe connais ton savoir vivre et ta délicatesse.Ce n'est pas à toi que ce reproche est destiné. Tu apportes une réponse qui peut compléter ce qui a été indiqué. Au contraire, ton intervention est la bienvenue. Amicalement Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
ludo07 Posté(e) le 9 juin 2008 Auteur Posté(e) le 9 juin 2008 Bonjour à Tous, EXCUSE Patrick_35 mais je te remercis pour tes liens bien evidemment et pour ta réponse. J'ai mis le lien en favoris. je ferais plus attention la prochaine fois quand je remercierais de n'oublier personne. Sans rancunes j'espere? Pour didier: je vais essayer tous de suite.Merci. A+
ludo07 Posté(e) le 9 juin 2008 Auteur Posté(e) le 9 juin 2008 didier: Je viens d'essayer ton code de programme, c'est exactement ce que je recherche, la boite de dialogue qui s'ouvre pour la recherche d'un repertoire est parfaite. Elle est différente de celle que moi j'obtiens qui est moin pratique que celle obtenu avec ton code. Par contre (et j'esperes ne pas être penible) je souhaites selectionner un repertoire, or dans ton code on peut selectionner que un fichier , comment je peux faire? Merci http://cjoint.com/?gjuKBoeBj7 A+
lovecraft Posté(e) le 9 juin 2008 Posté(e) le 9 juin 2008 Bonsoir, Merci didier de la remarque... ;)c'est un code que j'avais dans mes archives, Je l'avais fait avec fred e completer avec des p'tits recup sur le net. a l'epoque je m'en servait pour recuperer le chemin des fichiers d'un repertoire afin de pour effectuer des scripts sous excel. (d'ou ma confusion)autrement j'espere ue tu te sent bien sur ton ile..... @plus LB http://www.youtube.com/user/CADMINATOR?feature=mhee
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant