Bonjour,
comme je l'ai indiqué dans le post précédent, je débute dans la programmation sous TOPSolid, et je voudrais savoir comment faire pour lancer une impression soit en VB soit en LIP ?
Merci d'avance.
Imprimer en automatique
Modérateurs : remi77, D@vid, Alexis GERARD
-
- Première Classe
- Messages : 18
- Enregistré le : 07 nov. 2006, 09:31
- Version TopSolid : 6.12
- Localisation : En Haute Loire
Pour info un module en VBA permettant de scanner tout un répartoire contenant des DFT et de les imprimer en auto sur une imprimante PDF si le format de papier est le même que le parametre entré, si cela peut vous être utile.
Lolo43
-----------------------------------------------------------------------------
Lolo43
-----------------------------------------------------------------------------
Code : Tout sélectionner
[color=blue]Sub impr_repertoire(rep, fmt)
'Rechercher les fichier .DFT dans un repertoire donné et l'imprimer sous format PDF
Dim doc As TopSolid.DocumentDraft
Set fs = Application.FileSearch
With fs
'Dossier à scanner
specdossier = rep
'Longueur du chemin spécifié
lonpath = Len(specdossier)
.LookIn = specdossier
'Type DFT
.Filename = "*.dft"
If .Execute > 0 Then
'Ouvrir Topsolid
Set TopApp = New TopSolid.Application
'Rendre visible Topsolid
TopApp.Visible = True
For i = 1 To .FoundFiles.Count
'Extraction du nom de fichier
a = .FoundFiles(i)
c = Right$(.FoundFiles(i), Len(.FoundFiles(i)) - lonpath - 1)
'Création du nom de fichier à sauvegarder
e = Left$(c, Len(c) - 4) + ".pdf"
f = "\\serveur\Plans PDF\" + e
'Ouvrir le document DFT
Set doc = TopApp.Documents.Open(a, "", False)
orient = doc.Path
'L'imprimer si le format est identique au format sélectionné
If doc.Drawings.Item(1).PaperFormat = fmt Then
doc.PrintOut
Application.Wait (Now + TimeValue("0:00:20"))
'Copier le fichier imprimé dans le répertoire réseau
FileCopy "C:\pdftemp\fichierpdf.pdf", f
End If
doc.Close
Next i
Else
MsgBox "Pas de fichier dans ce répertoire"
End If
End With
'Fermer TopSolid
TopApp.Quit
End Sub
[/color]
- D@vid
- Administrateur
- Messages : 419
- Enregistré le : 20 juil. 2006, 17:29
- Version TopSolid : 7.13
- Module TopSolid : TopSolid'Design
- Localisation : Nantes, France
- Contact :
Excellent ! Merci à toi.
J'ai juste modifié l'affichage de ton code pour une meilleure lisibilité.
A+
J'ai juste modifié l'affichage de ton code pour une meilleure lisibilité.
A+
Happy TopSolid!
D@vid
- Si vous avez obtenu une réponse à votre question, merci de cliquer sur la coche grise du message pour faire remonter le message comme résolu
- Préférez le contact en MP ou par E-mail forum@topsolid.com
- Avant de poser une question, utilisez la fonction Rechercher du forum ou consulter la FAQ
D@vid
- Si vous avez obtenu une réponse à votre question, merci de cliquer sur la coche grise du message pour faire remonter le message comme résolu
- Préférez le contact en MP ou par E-mail forum@topsolid.com
- Avant de poser une question, utilisez la fonction Rechercher du forum ou consulter la FAQ