Schrijven naar een Excel-bestand vanuit de SolidWorks VBA?

Hallo allemaal,

Als ik een eenvoudig onderdeel teken (zonder een grote assemblage), gebruik ik momenteel een macro die het onderdeel opslaat in een nieuwe map die door de macro is gemaakt, het slaat ook een tekening van dat onderdeel en een PDF van die tekening op. Nu heb ik een Excel-directory waarin ik een track heb van al mijn huidige projecten. Ik zou graag willen dat deze macro deze map ook vult met de naam, de datum, een hyperlink van het pad...

Dus mijn eerste vraag is: welke code kan ik gebruiken om Excel en Excel-bestand te openen?

En de tweede: Welke code kan ik gebruiken om gewoon naar een cel in een ecxel-bestand ( van de solidworks VBA) te schrijven?

Dan denk ik dat ik het voor de rest wel aankan.

Bij voorbaat dank!

Fijne dag

 

Hallo

Kijk in het VOLGENDE voorbeeld, je zou daar moeten vinden wat je zoekt.

Vriendelijke groeten

Hallo, ik heb niet gezien wat mij interesseert in uw voorbeeld en ik heb heel weinig voorbeelden van SolidWorks gevonden --> Excel-communicatie, maar sinds vanmorgen ben ik erin geslaagd om goede vooruitgang te boeken met het probleem.

Voor wie op zoek is naar een oplossing voor een soortgelijk probleem:

'Om mijn Excel-bestand te openen:

App instellen = CreateObject("shell. Toepassing")

MyFile = "C:\Gebruikers\sstagemaint\Desktop\PROJECT TRACKING.xlsm"
   App.Open (MijnBestand)

 

'Objecten voor bestellingen in excel bestand:

   Dim werkmap als object
   Dim blad als object

   Dim exApp als object


   Set exApp = CreateObject("Excel.Application")                                  ' Ecxel Applicatie Selectie
   Set Workbook = exApp.Workbooks("PROJECT TRACKING.xlsm")            ' De werkmap selecteren in de applicatie
   Set Sheet = Workbook.sheets("Sheet1")                                              ' Het blad in de werkmap selecteren

 

' Selecteer cel C8  uit de SolidWorks Vba:

Blad.Bereik ("C8"). Selecteer                         ' Selecteer cel in blad    

 

 

Ziezo, ik heb het probleem eindelijk makkelijker opgelost dan ik dacht.

In ieder geval bedankt voor het antwoord.

Vriendelijke groeten

Nou, in mijn voorbeeld is er alles wat je nodig hebt en na het schoonmaken wat in jouw geval niet handig is, geeft het bijvoorbeeld:

Sub OpenExcel()

Dim xlApp als Excel.Application
Stel xlApp in = Nieuwe Excel.Toepassing
Dim wbk als Excel.Workbook
Dim sht als Excel.Werkblad

Met xlApp
    . Zichtbaar = Waar
    Stel wbk in = . Werkmappen.Toevoegen  ==> een nieuwe werkmap openen (*)
    'Stel wbk in = . Workbooks.Open("C:\monfichier.xls") ==> een bestaande werkmap openen (*)
    Stel sht in = wbk. Actief blad
Eindigen met

Met sht
    . Bereik ("A1"). Waarde = "Cel 1"
    . Bereik ("A2"). Waarde = "Cel 2"
    . Bereik ("A3"). Waarde = "Cel 3"
    . Bereik ("A4"). Waarde = "Cel 4"
    . Bereik ("A5"). Waarde = "Cel 5"
    . Bereik ("A6"). Waarde = "Cel 6"
Eindigen met

Einde Sub

(*) Plaats een van de lijnen, afhankelijk van wat je wilt doen

En vergeet natuurlijk niet de verwijzing naar "Microsoft Excel xx.0 Object Library" te plaatsen.

Vriendelijke groeten