Hallo gemeenschap.
Ik ben in mijn vroege stadia op SW macro's.
Ik wil een macro maken die de naam van het bestand (zonder de extensie) ophaalt en deze string registreert in een persoonlijke eigenschap.
Ik kom pbs tegen over het splitsen van de extensie van de bestandsnaam die ik heb weten te herstellen.
Hieronder staat de code die ik heb geschreven. Wat doe ik verkeerd, want ik begrijp het echt niet...
Dim swApp als object
Sub hoofd()
Stel swApp = Toepassing.SldWorks in
Stel swModel = swApp.ActiveDoc in
Dim swBodies als variant
Dim swBody As SldWorks.Body2
Deel instellen = swModel
Dim b als snaar
Dim naam
b = swModel.GetTitle
Foutopsporing.Print b
naam = Splits(b, ".", -1)
Naam debuggen.Print
Einde Sub
Bij voorbaat dank
pl
3
De leiding moet worden vervangen:
naam = Splits(b, ".", -1)
Bij:
Naam = Links(b, (InStrRev(b, ".", -1, vbTextCompare) - 1))
Want zo kan Split niet gebruikt worden.
Oeps, het ontvangen bericht is:
Runtime-fout 13
Type incompatibiliteit
1 like
pl
5
Ja, ik heb getest en gezien.
Ter informatie is het noodzakelijk om ook aan te geven welke regel fout is:)
Met mijn vorige bericht werkt het nu.
Heel erg bedankt, maar wat betekent deze regel code???
1 like
pl
7
Voor splitsing, zie hier:
http://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-I
Naar links zie hier:
http://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-B
Voor instrrev, zie hier (het verschil met instr is dat het begint aan het einde van de string):
http://silkyroad.developpez.com/VBA/ManipulerChainesCaracteres/#LI-E
Anders, voor functies op strings, zie ook:
http://boisgontierjacques.free.fr/pages_site/chainesvba.htm