Hello,
I have used public subroutine for swap appearance library from Autodesk to RAL (subroutine has published on the forum) and I have modified it:
SyntaxEditor Code Snippet
Public Sub SetOccurrenceAppearance()
Dim asmDoc As AssemblyDocument
asmDoc = ThisApplication.ActiveDocument
' Get an appearance from the document. To assign an appearance is must
' exist in the document. This looks for a local appearance and if that
' fails it copies the appearance from a library to the document.
Dim localAsset As Asset
On Error Resume Next
localAsset = asmDoc.Assets.Item("RAL")
MessageBox.Show(Err, "Title")
If Err Then
On Error GoTo 0
' Failed to get the appearance in the document, so import it.
' Get an asset library by name. Either the displayed name (which
' can changed based on the current language) or the internal name
' (which is always the same) can be used.
Dim assetLib As AssetLibrary
assetLib = ThisApplication.AssetLibraries.Item("314DE259-5443-4621-BFBD-1730C6CC9AE9")
' assetLib = ThisApplication.AssetLibraries.Item("Autodesk Appearance Library")
' Get an asset in the library. Again, either the displayed name or the internal
' name can be used.
Dim libAsset As Asset
libAsset = assetLib.AppearanceAssets.Item("0AD2A068-7D2B-40D5-BF3C-54412B7563E2")
' libAsset = assetLib.AppearanceAssets.Item("RAL")
' Copy the asset locally.
localAsset = libAsset.CopyTo(asmDoc)
End If
On Error GoTo 0
' Have an occurrence selected.
Dim occ As ComponentOccurrence
occ = ThisApplication.CommandManager.Pick(kAssemblyOccurrenceFilter, "Select an occurrence.")
' Assign the asset to the occurrence.
occ.Appearance = localAsset
End Sub
But there is error message:
Error on line 21: Value of he type Microsoft.VisualBasic.ErrObject can't convert to Boolean.
(That is my translate from Czech - excuse me).
PLease, help me. Thank you very much.
Jan