Hallo
Ik wil graag gegevens uit een Excel ophalen volgens de naam van mijn assembly en deze in de eigenschappen ervan schrijven.
Maar zodra ik mijn code uitvoer, krijg ik een foutmelding "Bibliotheek niet geregistreerd", maar voor alles wat de Microsoft Excel 15.0 Object Library-referenties zijn, wordt gecontroleerd.
Heb je een idee?
Sub OpenExcel()
Dim xlApp als Excel.Application
Stel xlApp in = Excel.Toepassing
Dim wbk als Excel.Workbook
Dim sht als Excel.Werkblad
Met xlApp
. Zichtbaar = Waar
. Werkmappen.Open ("P:\05-Solidworks\CAD\Developer Request.xlsm")
Eindigen met
Einde Sub
Ik weet niet waarom het niet werkt, maar hier is een site met veel werkende voorbeelden, waaronder een met een xls-bestand:
https://www.codestack.net/solidworks-api/document/tables/write-excel-table-into-general-table/
Een 2e site met voorbeeld:
https://www.cadsharp.com/blog/using-microsoft-excel-with-the-solidworks-api/
Hopelijk heb je hier wat aan en dan kun je ons feedback geven.
Hallo
Ik heb deze sites al gezien en getest, maar niets helpt, hij vertelt me altijd dat ik een referentieprobleem heb:(
Ik heb deze code gevonden die functioneel is (sw2020 excel 16.0)
Option Explicit
Dim swApp As Object
Dim swModel As Object
Dim xlApp As Object
Dim xlSheet As Object
Dim xlBooks As Object
Sub Main()
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
xlApp.Workbooks.Open "\\Hul-fps1\fsm$\BOLSTERS.xls"
Set xlSheet = xlApp.ActiveSheet
End Sub
Bewerken:
Uw lijn vervangen:
Stel XlApp=Excel.Application in op:
Set xlApp = CreateObject("Excel.Application")
Dit opent een excel voor mij.
aaaaah ja, het opent excel voor mij ook:D!
Raar, ik begrijp het verschil niet...
Nou, ik zou een ADODB-verbinding moeten maken om het sneller te maken, maar ik zal het later doen
Dank je wel Denis!
Hallo
Het was het CreateObject dat ontbrak. Of anders moest u coderen zoals hieronder om een Excel-instantie te maken
Set xlApp = New Excel.Application
3 likes