jedna dobrá duše pro mě napsala tento kód (viz. níže), jenže přes macra a VB jsem laik a nevím kam s tím. Kód slouží pro hromadné přepsání atributu v iVlastnostech (jsou to speciální vlasnosti pro soubory vytvořené v Autodesk Inventoru).
Takže nevím, jestli mám ten kód vložit do maker v Inventoru (tam mě to moc nešlo) nebo otevřít Microsoft visual basic a vytořit tam soubor *.vb.
Hlavně potřebuji nastavit jakousi referenci do VBA scripting runtime. Něco jsem našel, dělá se to např. ve Wordu nebo v Excelu. Ale nevím, kde to mám nastavit já.
Setkal se s tímto někdo?
Děkuji
Martin
Kód: Vybrat vše
Public Sub UpdateDocs()
'JDK 2013
' Include REF to Microsoft Scripting Runtime
Dim oApp As Application
Set oApp = ThisApplication
Dim oDoc As PartDocument
Dim oPropSet As PropertySet
Dim FSO As New Scripting.FileSystemObject
Dim oFld As Scripting.Folder
Dim oFile As Scripting.File
Dim Path As String
' Define path to folder
Path = "C:\Test"
If FSO.FolderExists(Path) Then
Set oFld = FSO.GetFolder(Path)
Else
MsgBox ("Folder Does Not Exist")
Exit Sub
End If
oApp.SilentOperation = True
For Each oFile In oFld.Files
getExt = Split(oFile.name, ".")
sExt = getExt(1)
sName = getExt(0)
sKey = Split(sName, "-")
If InStr(sExt, "ipt") Then
Set oDoc = oApp.Documents.Open(oFile, False)
If oDoc.DocumentType = kPartDocumentObject Then
Dim oSummaryPropSet As PropertySet
Set oSummaryPropSet = oDoc.PropertySets.Item( _
"Summary Information")
oSummaryPropSet.Item("Keywords").Value = sKey(1)
Dim oDesignPropSet As PropertySet
Set oDesignPropSet = oDoc.PropertySets.Item( _
"Design Tracking Properties")
oDesignPropSet.Item("Project").Value = sName
With oDoc
.Update
.Save
.Close
End With
End If
End If
Next
oApp.SilentOperation = False
Set oFile = Nothing
Set oFld = Nothing
Set FSO = Nothing
End Sub