Aller au contenu

Curlygoth

Membres
  • Compteur de contenus

    813
  • Inscription

  • Dernière visite

  • Jours gagnés

    7

Tout ce qui a été posté par Curlygoth

  1. Bonjour, Suite à une demande par MP pour extraire toutes les images d'un classeur vers un dossier, je me disais qu'il serait bon de partager ce code : 1°) définir le dossier 2°) Boucler sur les formes des feuilles 3°) vérifier les types de formes pour ne traiter QUE les images 4°) Copier l'image l'inserer dans un objet pour les graphiques (coller l'image) et export l'objet graphique Sub export_img() Dim dossier As String Dim monimage As String dossier = ThisWorkbook.Path & "\" For i_NF = 1 To Sheets.Count Worksheets(i_NF).Activate NB_IMG = Worksheets(i_NF).Shapes.Count For i_IMG = 1 To NB_IMG Worksheets(i_NF).Shapes.Item(i_IMG).Select Set sh = Worksheets(i_NF).Shapes.Item(i_IMG) If sh.Type <> 13 Then GoTo suivant: Call sh.CopyPicture(xlScreen, xlBitmap) nomimage = dossier & Worksheets(i_NF).Name & "-" & i_IMG & ".jpg" With Worksheets(i_NF).ChartObjects.Add(0, 0, sh.Width, sh.Height).Chart .Paste .Export nomimage, "JPG" End With suivant: Next i_IMG Next i_NF End Sub Edit : Si vous souhaitez mettre les images dans des dossiers avec le nom des onglets d'ou elles proviennent : Sub export_img() 'Parcours de toutes les feuilles For i_NF = 1 To Sheets.Count Worksheets(i_NF).Activate NB_IMG = Worksheets(i_NF).Shapes.Count 'Parcours de toutes les images For i_IMG = 1 To NB_IMG Worksheets(i_NF).Shapes.Item(i_IMG).Select 'détection si images If Worksheets(i_NF).Shapes.Item(i_IMG).Type <> 13 Then GoTo suivant: Call Worksheets(i_NF).Shapes.Item(i_IMG).CopyPicture(xlScreen, xlBitmap) Set Sh = ActiveSheet.Shapes(i_IMG) dossier = ThisWorkbook.Path & "\" & Worksheets(i_NF).Name & "\" On Error Resume Next MkDir dossier On Error GoTo 0 monimage = dossier & Worksheets(i_NF).Name & "-" & i_IMG & ".jpg" With ActiveSheet.ChartObjects.Add(0, 0, Sh.Width, Sh.Height).Chart .Paste 'Sauvegarde l'image du graphique au format jpg .export monimage, "JPG" End With suivant: Next i_IMG Next i_NF End Sub
  2. Gilet a été plus rapide 😉
  3. As tu le module VBA ?
  4. Google est mon plus grand copain ! et il a répondu a d’innombrable réponse ! Par des personnes qui ont déjà posé ma question ! et parfois même par des questions que d'autre ce pose qui contienne la répons à ce que je cherches (et j'avoue faire partie de ceux qui préfère donner des pistes de recherche que des réponse toute faite !)
  5. MAJ : "Libre de tout engagement" à partir de fin novembre 2022
  6. hello, ça fait très longtemps que j'ai pas réaliser de script, Je les faisait avec mon ami Excel ou je mettait ma formule que je déroulais ensuite... sur excel CAR(10) te fera un retour à la ligne (non visible) mais compréhensible sur autocad 😉 en enregistrant en .prn puis en renommant en .scr et sinon : tu les génères comment ?
  7. hapy birthday ! 20 ans ! Faudrait retrouver les premières questions pour voir 😉
  8. @lecrabe => Les liens vers un forum pour expliquer les démarches => La résolution de mes problèmes lors de mes premières manipulations pour MAP.
  9. et bien disons que si... d'aileurs tu trouvera le sujet : mais comme tu pourra le voir ça passe par un requete, que si tu peux mettre en place QUE si tu es Administrateur de ton PC ! Aujourd'hui, je suis dans une grande entreprise (plus que 6 semaines car en période de rupture conventionnelle) et tu es bloqué de partout... mais j'ai MAP ! et donc je me débrouille... merci @lecrabe mais soyons honnête : je connais pas très bien les commande MAP ...
  10. Merci je vais pouvoir arrêter de reprojeter à la main un par un ^^
  11. créer des boutons dynamiquement avec le lien (ou ligne macro qui renvoie vers la présentation du nom) Je suis pas expert en création de bouton dynamique malheureusement...
  12. @didier Complement d'accord avec toi ! et oui une suite est toujours plus simple, plus clair,plus propre mais parfois ce n'est pas le cas ^^. apres oui on peux faire appel un module pour sélectionner les points pour les mettres dans le bon ordre mais autant dessiner directement ^^
  13. s'il n'y a pas de point de niveau fini (ou mieux les ecarter) avant de lancer la procédure qui recherche les points les plus proche et s'il a déjà été relié on ne le prend pas en compte sur le dessin de didier sa fera 1 / 2 / 32 / 3 / 4 / 5 / 6 / 33 / 7 ... et si on écarte en amont le 32 33 on aurait le meme résultat jusqu'a 12 ! car le point 17 est peut etre plus proche que le point 13 ^^
  14. Curlygoth

    Export DWG en step

    Alors je ne pourrais très certainement pas t'aider mais : Les noms qu'ils ont dans le rendu que tu as est très certainement leur identiication objet (Handle). En programmation, on peux gérer des objets via leur handle. Il faudrait trouver un convertisseur qui puisse conserver le nom des blocs (.effectivename) et qu'il le garde plutot que de le remplacer par la valeur .handle ne connaissant pas l'extension .step je ne pourrais pas t'aider plus... il faudrait que tu fasse des tests de DWG vers .step et l'inverse pour voir comment cela "réagit" entre Edrawing et Autocad afin de comprendre le fonctionnement du "convertisseur". et tenter de palier au probleme...
  15. hello, Une polyligne existe déjà ? ou est ce que le programme doit "rechercher" les points un par un pour te tracé quelque chose ?
  16. Curlygoth

    Extraction

    en programmation : tout est possible et moi je dis c'est possible et les lignes en background gris c'est quoi ?
  17. Moi je dirais : 1°)Sélection du périmètre avec porte 2°) choix de la chaise bloc réel de de la chaise 3°) paramètrage (Espace de circulation / écart entre chaise , etc...) 4°) dessine un résultat
  18. pas du tout.. En revanche, j'ai des aptitudes à apprendre très vite. Je te laisserais me tester à ce sujet 😉
  19. Je sais que la vie y est plus cher donc il faut que je me renseigne car je veux rester dans ma future entreprise 😉
  20. Bonjour, Je vais étaler un peu ma vie, mais bon... je pense qu'il faut comprendre le contexte ! Contexte : Il y a un an, j'ai trouvé une entreprise qui souhaitait développer son bureau d'étude, j'ai donc créer un programme avec la charte graphique entreprise et les chartes graphiques de leur client, le tout en automatisant un maximum de taches. Aujourd'hui, leur direction/politique changent, ils veulent stopper/arrêter le développement et (essayer) de faire sortir leurs dessinateurs développeurs de leurs agences. Je ne comprends pas leur décision... (Personnellement, je pense que c'est une erreur de leur part et je leur est dit, mais c'est pas moi qui prend les décisions.) Toujours est-il que mon employeur m'aide a partir, avec préavis négociable ! je peux donc démissionner ou faire une rupture conventionnelle quand je veux (c'est déjà un luxe !) Ma recherche : Donc, je cherche une entreprise qui cherche à se développer sur le long terme ayant des projets un peu tout azimut. Je fais de la 2D/3D texturé, j'ai travaillé, dans le Batiment(relevé intérieur, relevé façade, béton préfabriqué,Couverture/bardage) et les réseaux Publique, ma plus value ? la programmation d'outils métiers spécifiques ! Je peux envoyer mon CV via MP (bien qu'il est aussi téléchargeable sur mon site) Mes disponibilités : Rapide ! sous réserve de trouver un logement rapidement suivant la localisation en France (ou ailleurs) Localisation : Je pense que vous avez compris que je suis prêt à déménager (la France est pour moi petite) PS : si cela ne se fait pas de faire une annonce un peu comme ça je retirerais ce post sans délai ^^
  21. dans un .lsp (fichier txt renommé) apres Si tu fais du python je conseil le VBA sur autocad vu que la syntaxe y ressemble tu sera pas perdu ^^ coordinnees des points : LISTE_POINT = obj.coordinates Z = Obj.elevation (pour polyligne2D) sinon ce sera dans la liste de points obj.length pour la longueur des polylignes
  22. pourquoi ne pas faire un gestionnaire de cartouche ?
  23. Si tu as besoin d'automatiser quelque chose de plus complexe (7 fonctions max dans les formules) je suis dispo
  24. X a quel valeur ? car si cette valeur est dans le bloc via une mesure dynamique tu a juste à la récuperer ^^
×
×
  • 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é