嗨,比格尔,
我确实看过你的代码,并试图根据我的要求修改它,但无法使其正常工作。
我有61个属性需要更改(如果它们不是空的),我尝试循环每个属性。但我的画什么也没发生。
- Sub Update_DWG() ' Performed in a loop for each drawing (over 2000)
- On Error Resume Next
- Set ACAD = GetObject(, "AutoCAD.Application")
- If Err.Description > vbNullString Then
- Err.Clear
- Set ACAD = CreateObject("AutoCAD.Application")
- End If
- ACAD.Visible = True
- xDWGPath = "C:\Users\297560\Documents\Development\AutoCAD Update"
- xDWGFile = xDWGNo & ".dwg" ' - set in a calling sub
- xDWGFull = xDWGPath & xDWGFile
- ACAD.Documents.Open (xDWGPath & xDWGFile)
- '
- BLOCK_NAME = "SLR_TfNSW_A1_Tblock"
- FilterDXFCode(1) = 2
- FilterDXFVal(1) = "SLR_TfNSW_A1_Tblock"
- SS.Select acSelectionSetAll, , , FilterDXFCode, FilterDXFVal
- For Cntr = 0 To SS.Count - 1
- If SS.Item(Cntr).Name = BLOCK_NAME Then
- If xValue01 <> "" Then
- attribs(1).TextString = xValue01
- attribs(1).Update
- End If
- ACAD.ActiveDocument.SendCommand "qsave close" & vbCr
|