Aller au contenu

geolys

Membres
  • Compteur de contenus

    5
  • Inscription

  • Dernière visite

geolys's Achievements

Newbie

Newbie (1/14)

0

Réputation sur la communauté

  1. geolys

    Impression automatique

    :) :) :) Sous Autocad 2006, il y a une modification pour l'impression (voir si c'est pareil pour 2005), il faut passer la variable "BACKGROUNDPLOT" à 0 en VBA. Si elle est a 1, on obtient ce message d'erreur. --- ThisDrawing.SetVariable "BACKGROUNDPLOT", 0 UN GRAND MERCI, ça marche !!! A ce jour, l'ensemble des employés devaient passer sur mon poste (seul à garder une licence 2004). Avec ta solution j'ai pu l'installer sur l'ensemble des postes Encore merci, il suffit bine souvent de peu :casstet: :casstet: :casstet:
  2. :casstet: J'ai développé un programme pour automatiser l'impression de x format A3 Dans ce programme j'insère à un moment la ligne ThisDrawing.Plot.DisplayPlotPreview acFullPreview ou (en fonction d'une option venant d'un formulaire) ThisDrawing.Plot.PlotToDevice La programmation fonctionne très bien sous autocad 2004 mais pas sous 2005, pourtant l'aide renvoie la même syntaxe que sous 2004. J'ai testé avec exactement le même fichier et les mêmes imprimantes HELP !!! Code complet, il manque le formulaire pour avoir le lien avec les variables Private Sub FM_imprime_Click() Dim pt1(1) As Double, pt2(1) As Double form_imprime.Hide ThisDrawing.Activate For nbl = 1 To fm_nbl For nbc = 1 To fm_nbc pt1(0) = Val(fm_x1) + (Val(fm_x2) * nbc) - Val(fm_x2): pt1(1) = Val(fm_y1) + (Val(fm_y2) * nbl) - Val(fm_y2) pt2(0) = Val(fm_x2) * nbc: pt2(1) = Val(fm_y2) * nbl If fm_imp2 = True Then: pt1(0) = pt1(0) + fm_m: pt1(1) = pt1(1) + fm_m: pt2(0) = pt2(0) - fm_m: pt2(1) = pt2(1) - fm_m ThisDrawing.ActiveLayout.SetWindowToPlot pt1, pt2 ThisDrawing.ActiveLayout.GetWindowToPlot pt1, pt2 ThisDrawing.ActiveLayout.PlotType = acWindow If frm_cen = True Then ThisDrawing.ActiveLayout.CenterPlot = True Else ThisDrawing.ActiveLayout.CenterPlot = False If fm_imp3 = True Then ThisDrawing.Plot.DisplayPlotPreview acFullPreview Else ThisDrawing.Plot.PlotToDevice Next nbc Next nbl End Sub
  3. geolys

    Impression automatique

    Merci, j'ai adapté la programmation pour répondre à mes besoins Ca marche très bien sous Autocad 2004, mais avec Autocad 2005 j'ai une erreur La méthode "DISPLAYPLOTPREVIEW" de l'objet "IacadPlot" a échoué Private Sub FM_imprime_Click() Dim pt1(1) As Double, pt2(1) As Double form_imprime.Hide ThisDrawing.Activate For nbl = 1 To fm_nbl For nbc = 1 To fm_nbc pt1(0) = Val(fm_x1) + (Val(fm_x2) * nbc) - Val(fm_x2): pt1(1) = Val(fm_y1) + (Val(fm_y2) * nbl) - Val(fm_y2) pt2(0) = Val(fm_x2) * nbc: pt2(1) = Val(fm_y2) * nbl If fm_imp2 = True Then: pt1(0) = pt1(0) + fm_m: pt1(1) = pt1(1) + fm_m: pt2(0) = pt2(0) - fm_m: pt2(1) = pt2(1) - fm_m ThisDrawing.ActiveLayout.SetWindowToPlot pt1, pt2 ThisDrawing.ActiveLayout.GetWindowToPlot pt1, pt2 ThisDrawing.ActiveLayout.PlotType = acWindow If frm_cen = True Then ThisDrawing.ActiveLayout.CenterPlot = True Else ThisDrawing.ActiveLayout.CenterPlot = False If fm_imp3 = True Then ThisDrawing.Plot.DisplayPlotPreview acFullPreview Else ThisDrawing.Plot.PlotToDevice Next nbc Next nbl End Sub
  4. geolys

    Impression automatique

    Les mises en page sont déjà faites dans l'espave papier via un autre pgm En fait je cherche comment avec la commande plot la possibilité de donner un mini max (une fenêtre)
  5. Dans l'espace Papier j'ai X mises en pages format 420 / 297. La première commence à 0,0, la deuxieme 420,0, la troisième 297,0, .... Eb bref sous forme de tableau 2 colonnes X lignes Comment en VBA effectuer les impressions en automatique fenetre 0,0 420,297 fenetre 420,0 840,297 fenetre 0,297 420,594 fenetre 420,297 840,594 ..... :casstet:
×
×
  • 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é