Hi,
I'm looking for a quick way to copy an object, say MTEXT, in paperspace and paste it to the same location in paperspace across every layout using one command. I don't want to have to use copy with basepoint or paste original because I have to repeat that command in every layout. Also whenever I use paste original in paperspace, the object disappears.
Any suggestions to speed this up would be great.
Oliver, Windows 10, C3D 2018
Solved! Go to Solution.
Solved by SmPeter. Go to Solution.
Solved by doben. Go to Solution.
Use the action recorder.
better yet record the action then add this to you acaddoc.lsp file (Command "MacroNameHere")
now batch publish/ SSM publish your layout tabs and they will all be done when the plot is finished.
Your Name
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
I came across a LISP routine a couple of years ago that does exactly that.
Kudos to the author, Alan Thompson.
The file is attached.
I know it's of no use to you for your current situation, but I would usually manage everything in my sheet layouts by using blocks during initial drawing setup, even if they are empty to begin with. I have the usual blocks for the title block, notes, legend, etc. and a couple of empty blocks with insertion at bottom left of sheet called Blank1 and Blank2 that I can rename and populate at a later date if required. Therefore if I need to add something to all sheets at the same location I can just utilise one of my blank blocks and have it update across all sheets in one step. I forgot to add scalebars once to a 72 sheet set and that blank block saved me from a lot of pain!
I would suggest, even if you use the lisp routine provided by one of the lads, rather than just copy the mtext across all of your sheets, add your text to a block, and then copy the block across all of your sheets. At least then if you need to edit the text or it's properties you can do so in one step by editing the block rather than having go through this process again.
Regards,
Peter
I concur. I do this too when I have to repeat a text or an object (like a signature block) across multiple layouts. Create the first instance of the text, block, or object, define it as a block with insert 0,0, defining the first instance as a block.
Then in every layout it's three keystrokes to insert: I <enter> <enter> (using zero zero as the insert point, and not exploding the inserted block).
And later, if I need to update the text or block or whatever it is, I only need to explode, modify, and redefine any one of them and all will update.
Thank you everyone for the useful information. I will try the LISP routine and keep the block ideas in mind for future use!
while you think things over consider custom fields and SSM
Your Name
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
Of course, I'm just useless with the sheet set manager and not overly experienced with fields. I've been trying to figure out the best way to manage multiple layouts and titleblock information for a while and always seems to come back to the SSM...one day I'll spend some time playing around with it and finding help videos/tutorials.
Thanks for the suggestion.
There is plenty help out there https://www.google.com/search?q=autocad+sheet+set+manager&rlz=1C1AZAA_enUS750US750&oq=Autocad+Sheet&...
Ask questions here no worries. I assure you it is not as complicated as it looks.
SHEETS HAPPEN: This document is old but considered the go by instructions
Your Name
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
@OliverE if you are managing large sheet sets then the attached may help.
I put it together back in 2012 for a particular project I was working on that had a lot of sheet layouts and I was fed up with updating each title block whenever the set was revised. I was trying to learn vba at the time and thought it would be a good little project to learn. It is simply an attribute editor but it edits all instances of the block to match the values given. Useful if just revising a sheet set. I use it on an almost daily basis now. Be warned though, it edits all instances of the block to match your values, not just one! It will work with any block, not just title blocks. I kept meaning to add an option to prefix or append a value but just never found time to learn how to do it.
Admittedly I've never tried SSM though so maybe that does the job better, but the attached lisp and dvb file work fine for me. It's a bit rough as I never found time to tidy it up (I could never get the titles of the columns to work properly either so they are missing), but it's perfectly functional. You'll need to update your support file paths to the folder that the .dvb is saved in, and probably put it to the top of the support folders as I find it doesn't work unless the path is first in the list. The .lsp file just sets up the command and loads the .dvb file.
When loaded, type satt at the command line and you will be met with a blank window, you can use the pull down to select your block or use the button at top right to select it. Your attributes will then be loaded. You can edit an attribute as you would in the usual way using the box at the bottom. Attributes that have been edited are given a "*" next to them. Any attributes that have differing values across the blocks are labelled as *varies*. Any attribute value labelled as *varies* will keep it's current value unless you edit the value *varies*, which will then overwrite it for all of those attributes.
If anyone with more knowledge wants to upgrade this then be my guest, just send me a copy of the improved version :o)
Regards,
Peter
Hi Peter,
Thanks for the suggestion and sharing your lisp routine. Sounds very similar to ATTSYNC and GATTE commands. Do you prefer it over these?
Thanks
@OliverE, yes it's basically the same as the GATTE command, but in a dialog box format as I find it speeds up editing multiple attributes. It could just be me but I prefer it that way.
ATTSYNC works a little differently. It updates the attribute properties of a block after editing. If you change the properties of, or delete/add attributes to a block in the block editor, those changes are not reflected in existing blocks, only new ones. To sync the attribute changes across all of the blocks you need to use the attsync command.
Regards,
Peter
@jeff_rivers wrote:
… And later, if I need to update the text or block or whatever it is, I only need to explode, modify, and redefine any one of them and all will update.
You should be able to avoid teh "explode, modify and redefine" set using the block editor or edit block in place.
Christopher Stevens
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
CTAL is the command to invoke the LISP routine
Landon Messal, PE
CAD Systems Integration Engineer
AutoCAD Civil 3D 2019.3
VMware Virtual Platform
Intel Xeon Gold 6244 CPU - 8 Cores at 3.6GHz
32GB's RAM
8GB's Graphical RAM