How to replace text in multiple blocks of DWG files with Excel VBA Macro using NanoCAD Free/AutoCAD.

If your DWG files use blocks for the similar information such as Dates, titles, etc. and these text are placed in multiple places in your drawings, you can automate replacing their text content from the template DWG file to edition DWG file state. If your project DWG files contents 50-100, etc. blocks, manual text replace will take some time. Simply create one template DWG file once and next time change data you need to replace fast in our Excel file with Macro.
For quick text replacement in multiple blocks of DWG files use free version of NanoCAD or AutoCAD commercial software.




Use NanoCAD Free:
1. Download NanoCAD Free
http://nanocad.com/page/DownloadNanoCAD
2. Read official NanoCAD installation guide
http://nanocad.com/page/InstallationGuide
In PDF format
http://nanocad.com/images/InstallGuide/InstallGuide.pdf
Use video guide
http://nanocad.com/page/InstallationVideo
3. Don’t forget to register and activate NanoCAD Free.
4. Download “Replace_Text_In_Blocks_Excel_NanoCAD.xlsm” Excel file with Macro.
5. Open Excel file, press “ALT+F11” to open Microsoft Visual Basic for Application, then “Tools - References”, add:
“nanoCAD Type Library (NCAuto.dll)”
“OdaX Type Library (OdaX_csd.dll)”,
then press OK.




6. Close Microsoft Visual Basic for Application editor.
7. Enable Macros in Excel
https://support.office.com/en-us/article/Enable-or-disable-macros-in-Office-documents-7b4fdd2e-174f-47e2-9611-9efe4f860b12
8. Copy all DWG files to the same folder with Excel file. In these DWG files NanoCAD will replace Text according to Data Table of “Replace_Text_In_Blocks_Excel_NanoCAD.xlsm” Excel file.
9. Press “ALT+F8” to run “Replace_Text_In_Blocks_Excel_NanoCAD” macro.
10. Macro will open NanoCAD application and replace all text in DWG blocks and close DWG files

Use AutoCAD commercial version:
1. Download “Replace_Text_In_Blocks_Excel_AutoCAD.xlsm” Excel file with Macro.
2. Open Excel file, press “ALT+F11” to open Microsoft Visual Basic for Application, then “Tools - References”, add:
“AutoCAD YYYY Type Library” file” (acaxXXenu.tlb),
where YYYY – YEAR of your AutoCAD Version, XX – 21, 20, 19,…(version number);
“AutoCAD Focus Control for VBA Type Library” (AcFocusCtrlXX.dll);
“AXDBLib” (axdbXXenu.tlb),
then press OK.


3. Close Microsoft Visual Basic for Application editor.
4. Enable Macros in Excel
https://support.office.com/en-us/article/Enable-or-disable-macros-in-Office-documents-7b4fdd2e-174f-47e2-9611-9efe4f860b12
5 Copy all DWG files to the same folder with Excel file. In these DWG files AutoCAD will replace Text according to Data Table of “Replace_Text_In_Blocks_Excel_AutoCAD.xlsm” Excel file.
6. Press “ALT+F8” to run “Replace_Text_In_Blocks_Excel_AutoCAD” macro.
7. Macro will open AutoCAD application and replace all text in DWG blocks and close DWG files

Known features and limitations:
a. Maximum DWG files – 1000.
b. Maximum different blocks quantity to change/insert text - 65530.
c. “Block Name” cell must contain DWG block name (for example, DATASHEET_TITLE, DATE, DESCRIPTION for “Stepping Motor SH4009l1206 Blocks.dwg” file in ZIP archive). “Block Name” could be A$C26677C24, etc.
d. “Data Type” cell could be: “FullText” or “InternalText”.
For «FullText» Type macro will replace text in blocks which consists of Text/MText DWG objects.
For “InternalText” Type macro will replace text between “Text Before Insert” and “Text After Insert” words in blocks with Text. If you clear “Block Name” cell for “InternalText” Type row macro will insert text in all Text/MText objects that are not in blocks.
e. “Value To Replace/Insert” cell must contains text to replace/insert in blocks or Text/MText DWG objects.
f. “Font Height” cell data will change Text Height where macro replaces the text. Cell format for Font height is a Number with decimal separator according to Excel/System settings.
https://support.office.com/en-us/article/Change-the-character-used-to-separate-thousands-or-decimals-c093b545-71cb-4903-b205-aebb9837bd1e

No comments:

Post a Comment

Please send your comments and suggestions: