Forum:SolidWorks
Thema:Makro Dateiname auslesen
Möchten Sie sich registrieren?
Wer darf antworten? Registrierte Benutzer können Beiträge verfassen.
Hinweise zur Registrierung Sie müssen registriert sein, um Beiträge oder Antworten auf Beiträge schreiben zu können.
Ihr Benutzername:
Ihr Kennwort:   Kennwort vergessen?
Anhang:    Datei(en) anhängen  <?>   Anhänge bearbeiten  <?>
Grafik für den Beitrag:                                                
                                                       
Ihre Antwort:

Fachbegriff
URL
Email
Fett
Kursiv
Durchgestr.
Liste
*
Bild
Zitat
Code

*HTML ist AUS
*UBB-Code ist AN
Smilies Legende
Netiquette

10 20 40

Optionen Smilies in diesem Beitrag deaktivieren.
Signatur anfügen: die Sie bei den Voreinstellungen angegeben haben.

Wenn Sie bereits registriert sind, aber Ihr Kennwort vergessen haben, klicken Sie bitte hier.

Bitte drücken Sie nicht mehrfach auf "Antwort speichern".

*Ist HTML- und/oder UBB-Code aktiviert, dann können Sie HTML und/oder UBB Code in Ihrem Beitrag verwenden.

T H E M A     A N S E H E N
tunichtgut

Beiträge: 60 / 0

Solidworks 2012 64 bit,
Windows 7
Fujitsu Celsius W480
Intel Xenon 2,64GHz, 2,66GHz
8GB Arbeitspeicher
Nvidia Quadro FX 3800

Hallo

Ich habe mal wieder ein anliegen.

Wir lesen zur Zeit aus dem Dateinamen die Dateieigenschaften " Benennung und Zeichnungsnummer" aus.
zB. 9570-0500-021 Platte

über ein Makro werden nun die ersten 14 Stellen der Zeichnungsnummer zugeordnet und die restlichen Stellen der Benennung.

das Makro sieht so aus

Sub main()

' Connect to SolidWorks

    If swApp Is Nothing Then Set swApp = Application.SldWorks


Set model = swApp.ActiveDoc
Set modelext = model.Extension


Set prpmgr = modelext.CustomPropertyManager("")

'variablen
Zeichnungsnummer = model.GetTitle
name = model.GetTitle

'Eigenschaften extrahieren
Zeichnungsnummer = Mid(Zeichnungsnummer, 1, 14)
name = Right(name, Len(name) - 14)

'Eigenschaften Schreiben
longstatus = prpmgr.Set("Zeichnungsnr. / Best. Nr.", Zeichnungsnummer)
longstatus = prpmgr.Set("Benennung", name)


model.ForceRebuild3 (True)


Ist es nun auch Möglich, bis zur ersten Leerstelle im Namen auszulesen und in die Dateieigenschaften diesen Wert als Zeichnungsnummer zu schreiben? und dann wieder den Rest in Benennung?

Das ganze hat den Hintergrund, unsere Kunden benennen ja Ihre Dateien immer anders mir verschieden langen Zifferblöcken.

Vielen Dank schon mal in voraus

Gruß

Martin

------------------
Schöne Grüße

Martin

StefanBerlitz

Beiträge: 8740 / 682

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

Hallo Martin,

Zitat:
Original erstellt von tunichtgut:
Ist es nun auch Möglich, bis zur ersten Leerstelle im Namen auszulesen und in die Dateieigenschaften diesen Wert als Zeichnungsnummer zu schreiben? und dann wieder den Rest in Benennung?

Ja klar, du benutzt dafür die Funktion InStr() um die Position des Leerzeichens herauszufinden und benutzt dann deine Stringfunktionen wie gehabt.

Beispiel:

Code:
Sub main()

    Dim beispiel    As String
    Dim Znr        As String
    Dim Ben        As String
    Dim FirstBlank  As Long

    beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen"
   
    FirstBlank = InStr(1, beispiel, " ")
    Debug.Print FirstBlank
   
    Znr = Left(beispiel, FirstBlank - 1)
    Ben = Mid(beispiel, FirstBlank + 1, Len(beispiel))
   
    Debug.Print Znr; "##"; Ben

End Sub



Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

KMassler

Beiträge: 2615 / 176

** CSWP 01/2008 **
HP Z440, 16GB, Quadro K2200;
SWX2016 SP4;
SAP/PLM;
DriveWorks Pro;
Programmierung: VBA, Relikte mit VB6, aktuell VB.NET 2015

...oder alternativ die Split-Funktion:
Code:
Sub main()
    Dim beispiel    As String
    Dim Znr        As String
    Dim Ben        As String
    Dim Record As Variant
   
    beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen"
 
    Record = Split(beispiel, " ") ' String an allen Leerzeichen trennen,
                                  ' Record enthält dann ein Array mit allen Teilstrings
    If UBound(Record) > 0 Then    ' gibt es überhaupt Leerzeichen?
        Znr = Record(0)          ' Znr enthält ersten Teilstring
                                  ' Der Rest kommt in Ben
        Ben = Right(beispiel, Len(beispiel) - Len(Znr) - 1)
    End If
   
    Debug.Print Znr; "##"; Ben

End Sub


------------------
Klaus

www.al-ko.com | mein Gästebuch

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Hallo,

ich bin neu hier,

Ich hab genau das gleiche Problem...

Ich möchte aus dem Dateinamen bis zum Leerzeichen alles in Dateieigenschaft Zeichnungsnummer übernehmen und nach dem Leerzeichen in Benennung... Solidworks 2017
Die Beiträge waren sehr hilfreich... aber... es funktoniert nicht...

Kann mir jemand evtl. ein funktonierendes Makro zeigen?

Vielen Dank schon mal in Voraus.

------------------
:P

bk.sc

Beiträge: 2116 / 59

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

Hallo,

kannst du uns vielleicht erst Mal zeigen was du bisher gemacht hast bzw. wo bei dir ein Fehler auftritt, dann können wir dir besser helfen. Ein paar Randbedingungen wären vielleicht auch noch hilfreich um andere Fehlerquellen auszuschließen.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Dim swApp As Object
Sub main()

Dim beispiel                      As String
    Dim Zeichnungsnummer          As String
    Dim Benennung                As String
    Dim FirstBlank                As Long

    beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen"
 
    FirstBlank = InStr(1, beispiel, " ")
    Debug.Print FirstBlank
 
    Zeichnungsnummer = Left(beispiel, FirstBlank - 1)
    Benennung = Mid(beispiel, FirstBlank + 1, Len(beispiel))
 
    Debug.Print Zeichnungsnummer; "##"; Benennung
   


'Eigenschaften extrahieren
Zeichnungsnummer = Left(beispiel, FirstBlank - 1)
Benennung = Mid(beispiel, FirstBlank + 1, Len(beispiel))

'Eigenschaften Schreiben
longstatus = prpmgr.Set("Zeichnungsnummer", Zeichnungsnummer)
longstatus = prpmgr.Set("Benennung", Benennung)

model.ForceRebuild3 (True)

Set swApp = Application.SldWorks
End Sub


Fehler tritt bei Eigenschaften schreiben auf...
-> erster Teil soll in Zeichnungsnummer
-> zweiter Teil soll in Benennung

Vielen Dank!

------------------
:P

StefanBerlitz

Beiträge: 8740 / 682

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

Hallo FlippoInzagi,

du hast beim Abschreiben aus dem ersten Makro einige wichtigen Teile vergessen, den Rest durcheinander geschwurbelt (was soll z.B. das Set swApp = Application.SldWorks ganz am Einde deines Codes) und die Zeilen für das Auslesen der Stringteile dafür sicherheitshalber doppelt. Das kann so auch nicht funktionieren.

Im Ernst, versuch zumindest zu verstehen, wie das Makro funktioniert und welche Zeilen dir aus dem ersten Beitrag noch fehlen, damit das Makro funktioniert.

Ciao,
Stefan

PS: und nein, per PM-Anfrage mache ich das auch nicht

PS2: und falls dir jetzt gerade durch den Kopf geht Ich habe leider keine Ahnung von VBA und hoffe darauf, dass mir jemand das fertige Makro schreibt empfehle ich den Thread http://ww3.cad.de/foren/ubb/Forum2/HTML/028301.shtml , schau auch mal bei meiner Antwort hier, oder auch wie hier als Vorschlag oder hier als Erklärung

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Jetzt zeig es mir bei Zeichnungsnummer und Benennung wenigstens schon mal den kompletten Dateinamen an 

-----------------------

Dim swApp As Object
Sub main()

Set swApp = Application.SldWorks

' Connect to SolidWorks

    If swApp Is Nothing Then Set swApp = Application.SldWorks
   
   
Set model = swApp.ActiveDoc
Set modelext = model.Extension


Set prpmgr = modelext.CustomPropertyManager("")

    Dim beispiel                As String
    Dim Zeichnungsnummer        As String
    Dim Benennung              As String
    Dim FirstBlank              As Long

    beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen"
 
    FirstBlank = InStr(1, beispiel, " ")
    Debug.Print FirstBlank
 
    Zeichnungsnummer = Left(beispiel, FirstBlank - 1)
    Benennung = Mid(beispiel, FirstBlank + 1, Len(beispiel))
 
    Debug.Print Zeichnungsnummer; "##"; Benennung

'variablen
Zeichnungsnummer = model.GetTitle
Benennung = model.GetTitle

'Eigenschaften Schreiben
longstatus = prpmgr.Set("Zeichnungsnummer", Zeichnungsnummer)
longstatus = prpmgr.Set("Benennung", Benennung)


model.ForceRebuild3 (True)


End Sub

------------------
:P

bk.sc

Beiträge: 2116 / 59

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

Hallo,

Code:
beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen"
 
FirstBlank = InStr(1, beispiel, " ")
Debug.Print FirstBlank
 
Zeichnungsnummer = Left(beispiel, FirstBlank - 1)
Benennung = Mid(beispiel, FirstBlank + 1, Len(beispiel))

du zerlegst in diesem Codeabschnitt die Variable --> "beispiel" <-- und schreibst die jeweiligen Teilstücke in die Variablen "Zeichnungsnummer" und "Benennung".

Code:
Zeichnungsnummer = model.GetTitle
Benennung = model.GetTitle

Hier überbügelst du die beiden eingetragenen Werte in deinen Variablen dann wieder mit dem Dokumententitel um diese dann in den Eigenschaften einzutragen.

Nun überlege Mal ganz scharf wo der Fehler liegen könnte. 

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Hallo,

ok 

Vielen Dank schonmal!


--------------

Dim swApp As Object
Sub main()

Set swApp = Application.SldWorks

' Connect to SolidWorks

    If swApp Is Nothing Then Set swApp = Application.SldWorks
   
   
Set model = swApp.ActiveDoc
Set modelext = model.Extension


Set prpmgr = modelext.CustomPropertyManager("")

    Dim beispiel                As String
    Dim Zeichnungsnummer        As String
    Dim Benennung              As String
    Dim FirstBlank              As Long

    beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen"
 
    FirstBlank = InStr(1, beispiel, " ")
    Debug.Print FirstBlank
 
    Zeichnungsnummer = Left(beispiel, FirstBlank - 1)
    Benennung = Mid(beispiel, FirstBlank + 1, Len(beispiel))
 
    Debug.Print Zeichnungsnummer; "##"; Benennung
   

'Eigenschaften Schreiben
longstatus = prpmgr.Set("Zeichnungsnummer", Zeichnungsnummer)
longstatus = prpmgr.Set("Benennung", Benennung)

model.ForceRebuild3 (True)


End Sub

-------

jetzt steht bei Benennung "Name ab dem ersten Leerzeichen"
und bei Zeichnungsnummer "1234-567-89ABC"

Ich stehe auf der Leitung...

------------------
:P

bk.sc

Beiträge: 2116 / 59

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

Hallo,

Zitat:
beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen"

du weist in dieser Zeile den Text der Variablen "Beispiel" zu den du später trennst, bei dir steht da eben beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen", jetzt noch mal kurz scharf nachdenken und du bist fast am Ziel  .

Tipp: Du hattest da vorhin ja schon mal was wo du deinen Dokumententitel ermittelt hast  .

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Hallo...

mhhhh.....
(Zeichnungsnummer = model.GetTitle)

dann muss ich anstatt Title irgendwas anderes nehmen...

------------------
:P

bk.sc

Beiträge: 2116 / 59

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

Hallo,

model.GetTitle gibt dir wie bereits erkannt den Titel zum aktiven Dokument als String (Textausdruck), diesen möchtest du gerne trennen, was aber im Moment noch nicht passiert da der String in der Variablen "beispiel" derzeit noch mit dem festen Wert (beispiel =) "1234-567-89ABC Name ab dem ersten Leerzeichen" befüllt wird.
Spricht doch eigentlich nichts dagegen die Variable "beispiel" mit einem anderen Wert (vielleicht mit dem Dokumententitel) zu füllen bevor du die Variable trennst und die Teilstücke den anderen Variablen (Zeichnungsnummer / Benennung) zuordnest, oder nicht  .

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Hallo,

klingt logisch, aber mir fällt nichts ein, wie ich das so umsetzen kann...


LG

------------------
:P

nahe

Beiträge: 1374 / 0

arbeite mit:
HP Z440 Workstation
Xenon (12-Kern) 3.5GHz
32GB RAM
238GB SSD
------------------------
SWX-2016 SP5.0
DBWorks-R15 SP2.17
----------------
Windows 7 64 bit
----------------
VB
VBA
Lotus Notes Datenbanken
erste Schritte mit Swift

Hallo Flippolnzagi,

ich verfolge die Diskussion, ein wenig.
Ohne Dir nahezutreten wollen,
würde ich Dir mal eine API-Schulung bei Deinem Re-Seller empfehlen

anbei ein Auszug, was da geschult wird.

------------------
Grüße
Heinz

bk.sc

Beiträge: 2116 / 59

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

Hallo,

Zitat:
klingt logisch, aber mir fällt nichts ein, wie ich das so umsetzen kann...

du darfst in die Variable "Beispiel" auch was anderes reinschreiben wie einen festen String wie "1234-567-89ABC Name ab dem ersten Leerzeichen" z.B. könnte da auch model.GetTitle drin stehen, dass ja auch einem String entspricht der getrennt werden kann.

Das würde in deinem Fall dann so aussehen beispiel = model.GetTitle an stelle von beispiel = "1234-567-89ABC Name ab dem ersten Leerzeichen".

Neben der Schulung die Heinz anspricht gibt es im ersten Schritt aber auch viele online Tutorials oder Beispielcodes im Internet oder sogar die API-Hilfe von SolidWorks ist da oft brauchbar. Für die Grundkenntnisse muss es aber nicht mal unbedingt ein SWX API Tutorial sein sonder kann auch Excell oder ähnliches sein, da gibt es wesentlich mehr zu finden.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete  

[Diese Nachricht wurde von bk.sc am 29. Nov. 2017 editiert.]

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Guten Morgen,

ich weiß, dass dieses Thema als Laie sehr schwer ist... Aber ich bin am Ende doch nur ein Anwender, der "nur" etwas vereinfachen mag. Um eben Fehler beim Abschreiben zu vermeiden und generell etwas Zeit einsparen will.

Ich hab nun

beispiel = model.GetTitle

eingefügt und es kommt wieder der komplette Dokumentenname 

Nun wird wahrscheinlich aber dem ersten Leerzeichen getrennt 


------------------
:P

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Halt...

Es funktiniert....  

Ich habe jetzt noch den Block mit den Variabeln entfernt und nun funktoniert es  DDDDDDDDD


     


------------------
:P

FlippoInzagi

Beiträge: 9 / 0

Solidworks 2017

Vielen Dank für Eure Hilfe!

Beim nächsten Problem werde ich wieder fragen 

VG


------------------
:P

Christian_W

Beiträge: 2028 / 4

SWX 2016sp5 WIN7-64
proAlpha6.2e/calinkV9
(Tactonworks)
(Medusa7, NesCAD2010,
solidEdge19) CSWP 12/2015

Zitat:
Original erstellt von nahe:
... eine API-Schulung bei Deinem Re-Seller empfehlen
...

Vorher ein paar Grundlagen im guten alten Basic / VBA wären vielleicht auch nicht schlecht.
Immer dran denken, das "=" ist in Basic eine Zuweisung, nicht wie in Prolog eine Gleichheitsdefinition.   

Gruß, Christian

bk.sc

Beiträge: 2116 / 59

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

Hallo,

ich hab dir den Code mal etwas aussagekräftiger geschrieben mit ganz viel Kommentierung zum nachvollziehen was da eigentlich in den einzelnen Zeilen passiert, des Weiteren habe ich auch noch was eingebaut falls im Dokumententitel die Endung mit angezeigt wird.

Beachte das dieser Code nur funktioniert wenn die Eigenschaften auch schon vorhanden sind.

Code:
Option Explicit

Dim swApp As SldWorks.SldWorks 'SolidWorks Objekt deklarieren
Dim swModel As SldWorks.ModelDoc2 'Model Objekt deklarieren
Dim swModelDocExt As SldWorks.ModelDocExtension 'Model Extension Objekt deklarieren
Dim swPropMgr As SldWorks.CustomPropertyManager 'Eigenschaftsmanager deklarieren

Dim sDocTitle As String 'Variable für zu Teilenden Text deklarieren
Dim sZeichnungsnummer As String 'Variable für Text bis Leerzeichen deklarieren
Dim sBenennung As String 'Variabel für Text ab Leerzeichen deklarieren
Dim lFirstBlank As Long 'Variable für Position des ersten Leerzeichens deklarieren

Dim longstatus As Long 'Prüfvariable

Sub main()

Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc 'Model Objekt setzen
Set swModelDocExt = swModel.Extension 'Model Extension Objekt setzen

Set swPropMgr = swModelDocExt.CustomPropertyManager("") 'Eigenschaftsmanager Objekt für Benutzerdefinierte Eigenschaften holen

sDocTitle = swModel.GetTitle 'Dokumententitel ermitteln und in sDocTitle schreiben
 
lFirstBlank = InStr(1, sDocTitle, " ") 'Position (Long) des ersten Leerzeichens in sDocTitle ermitteln und in lFirstBlank schreiben

sZeichnungsnummer = Left(sDocTitle, lFirstBlank - 1) 'Text (String) bis zum Leerzeichen aus sDocTitle ermitteln und in sZeichnungsnummer schreiben
sBenennung = Mid(sDocTitle, lFirstBlank + 1, Len(sDocTitle)) 'Text (String) nach dem ersten Leerzeichen aus sDocTitle ermitteln und in sZeichnungsnummer schreiben

lFirstBlank = InStr(1, sBenennung, ".SLD") 'Überprüfen ob sBenennung eine Dateiendung enthält

If lFirstBlank > 0 Then 'Püfen ob eine Dateiendung gefunden wurde
    sBenennung = Left(sBenennung, lFirstBlank - 1) 'Wenn ja Text bis Dateiendung von sBenennung ermitteln und zurück in sBenennung schreiben
End If

'longstatus = swPropMgr.Set2("Zeichnungsnummer", sZeichnungsnummer) 'Setzen des Wertes sZeichnungsnummer für die Eigenschaft Zeichnungsnummer
'longstatus = swPropMgr.Set2("Benennung", sBenennung) 'Setzen des Wertes sBenennung für die Eigenschaft Benennung

longstatus = swPropMgr.Add3("Zeichnungsnummer", swCustomInfoText, sZeichnungsnummer, swCustomPropertyReplaceValue) 'Erstellen der Eigenschaft "Zeichnungsnummer" und befüllen mit dem Wert sZeichnungsnummer
longstatus = swPropMgr.Add3("Benennung", swCustomInfoText, sBenennung, swCustomPropertyReplaceValue) 'Erstellen der Eigenschaft "Benennung" und befüllen mit dem Wert sBenennung

swModel.ForceRebuild3 (True) 'Model neu aufbauen

End Sub


[Edit]Hab den Code noch korrigiert das auch bei nicht vorhanden sein der Eigenschaften diese noch erstellt werden.

@Christian

Zitat:
Immer dran denken, das "=" ist in Basic eine Zuweisung, nicht wie in Prolog eine Gleichheitsdefinition.

Das stimmt nicht ganz, hin und wieder ist so ein "=" auch ein Vergleichszeichen. :P

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete  

[Diese Nachricht wurde von bk.sc am 29. Nov. 2017 editiert.]

Christian_W

Beiträge: 2028 / 4

SWX 2016sp5 WIN7-64
proAlpha6.2e/calinkV9
(Tactonworks)
(Medusa7, NesCAD2010,
solidEdge19) CSWP 12/2015

Zitat:

@Christian
Das stimmt nicht ganz, hin und wieder ist so ein "=" auch ein Vergleichszeichen. :P

Gruß
Bernd


da hast du natürlich recht.
man erkennt es dann meist an Schlüsselwörtern in der unmittelbaren Umgebung wie if, case, ...

Gruß, Christian