Witam wszystkich.
Mam mały poziom w VBA. Dostałem kod, który zmodyfikowałem zgodnie z Twoimi radami na tym forum.
Począwszy od złożenia, umożliwia eksport listy materiałów do arkusza .xls
Działa to idealnie, ale chciałbym dodać możliwość pobrania rozszerzenia plików w kolumnie: J.
Zmienna, która pozwala na pobranie rozszerzenia , jest następująca: Right(docfilename , 6)
Jak zintegrować tę zmienną z moim programem?
Sub main()
Dim xlApp As Excel.Application
Ustaw xlApp = Nowy Excel.Aplikacja
Dim wbk As Excel.Workbook
Dim sht As Excel.Arkusz roboczy
Z xlApp
. Widoczne = Prawda
Ustaw wbk = . Skoroszyty.Dodaj
Ustaw sht = wbk. Arkusz ActiveSheet
Zakończ się na
Dim swApp jako SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim swBOMAnnotation As SldWorks.BomTableAnnotation
Dim swBOMFeature As SldWorks.BomFeature
Dim boolstatus As Boolean
Dim BomType tak długo, jak długo
Przyciemnij konfigurację jako ciąg
Dim TemplateName As Ciąg
Ustaw swApp = Application.SldWorks
Ustaw swModel = swApp.ActiveDoc
Ustaw swModelDocExt = swModel.Extension
TemplateName = "M:\DATABASE\SZABLONY\05-Model nomenklatury\GP_ASM_Nomenclature BOS.sldbomtbt"
BomType = swBomType_Indented
Konfiguracja = swApp.GetActiveConfigurationName(swModel.GetPathName)
Konfiguracja MsgBox
Ustaw swBOMAnnotation = swModelDocExt.InsertBomTable3(NazwaSzablonu, 0, 0, TypFormularza, Konfiguracja, Fałsz, swNumberingType_Detailed, Prawda)
Ustaw swBOMFeature = swBOMAnnotation.BomFeature
swModel.ForceRebuild3 Prawda
Dim NumCol tak długo
Dim NumRow tak długo
Dim I tak długo
Słońce J Tak długo
LiczbaKolumn = swBOMAnnotation.ColumnCount
NumRow = swBOMAnnotation.RowCount
Dla I = 0 do NumRow
Dla J = 0 TB NumCol
Arkuszy. Komórki(I + 1, J + 1). Wartość = swBOMAnnotation.Text(I, J)
Następny J
Dalej I
boolstatus = swModelDocExt.SelectByID2(swBOMFeature.GetFeature.Description, "BOMFEATURE", 0, 0, 0, Prawda, 0, Nic, 0)
swModel.EditDelete
Przyciemnij ścieżkę jako ciąg
path = "C:\temp\BOS.xlsx"
Z xlApp
WBK. Zapisz jako ścieżkę
WBK. Zamykać
. Kończyć
Zakończ się na
Koniec subwoofera