Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Datumsfeld

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Datumsfeld (2688 mal gelesen)
Steiner Dominik
Mitglied
Mechanical Engineer


Sehen Sie sich das Profil von Steiner Dominik an!   Senden Sie eine Private Message an Steiner Dominik  Schreiben Sie einen Gästebucheintrag für Steiner Dominik

Beiträge: 141
Registriert: 12.09.2007

Inventor 2008
SP1
Dell Precision PWS380
Intel(R)
Pentium(R) CPU 3.20GHz
3.19GHz, 3,50GB RAM<P>Windows XP Pro
Version 2002
SP2

erstellt am: 28. Nov. 2007 14:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo

Ich hätte da eine Frage wieder mal.

Ich habe da ein Programmchen erstellt welches mein Änderungswesen abdeckt sprich ich habe eine Userform erstellt wo einige Textboxen sind wo ich die Möglichkeit habe meine Benutzerdefinierten I-Prop. reinzuschreiben. Bei Textfeldern funktionert es ja echt super nur habe ich ein Feld welches ich als Date definert habe (in I-Props)
kann mir jemand sagen wie ich ein Datumsfeld definiere.
Oder was ich machen soll damit wenn ich die Werte in die I-Props schreibe ein Datum übergeben wird.Anbei der Code


Code:

Private Sub Füllen_Click()
Dim oDoc As PartDocument                    'Definition Inventor
Set oDoc = ThisApplication.ActiveDocument

aRev.Value = oDoc.PropertySets(4).Item("1.0_Rev").Value
bRev.Value = oDoc.PropertySets(4).Item("2.0_Rev").Value
cRev.Value = oDoc.PropertySets(4).Item("3.0_Rev").Value
dRev.Value = oDoc.PropertySets(4).Item("4.0_Rev").Value
eRev.Value = oDoc.PropertySets(4).Item("5.0_Rev").Value
'fRev.Value = oDoc.PropertySets(4).Item("6.0_Rev").Value

aAndnummer.Value = oDoc.PropertySets(4).Item("1.1_Änd.Nr.").Value
bAndnummer.Value = oDoc.PropertySets(4).Item("2.1_Änd.Nr.").Value
cAndnummer.Value = oDoc.PropertySets(4).Item("3.1_Änd.Nr.").Value
dAndnummer.Value = oDoc.PropertySets(4).Item("4.1_Änd.Nr.").Value
eAndnummer.Value = oDoc.PropertySets(4).Item("5.1_Änd.Nr.").Value
'fAndnummer.Value = oDoc.PropertySets(4).Item("6.1_Änd.Nr.").Value

If oDoc.PropertySets(4).Item("1.2_Dat").Value = "01.01.1601" Then oDoc.PropertySets(4).Item("1.2_Dat").Value = " "
If oDoc.PropertySets(4).Item("2.2_Dat").Value = "01.01.1601" Then oDoc.PropertySets(4).Item("2.2_Dat").Value = " "
If oDoc.PropertySets(4).Item("3.2_Dat").Value = "01.01.1601" Then oDoc.PropertySets(4).Item("3.2_Dat").Value = " "
If oDoc.PropertySets(4).Item("4.2_Dat").Value = "01.01.1601" Then oDoc.PropertySets(4).Item("4.2_Dat").Value = " "
If oDoc.PropertySets(4).Item("5.2_Dat").Value = "01.01.1601" Then oDoc.PropertySets(4).Item("5.2_Dat").Value = " "
aDat.Value = oDoc.PropertySets(4).Item("1.2_Dat").Value
bDat.Value = oDoc.PropertySets(4).Item("2.2_Dat").Value
cDat.Value = oDoc.PropertySets(4).Item("3.2_Dat").Value
dDat.Value = oDoc.PropertySets(4).Item("4.2_Dat").Value
eDat.Value = oDoc.PropertySets(4).Item("5.2_Dat").Value
'fDat.Value = oDoc.PropertySets(4).Item("6.2_Dat").Value

aName.Value = oDoc.PropertySets(4).Item("1.3_Nam").Value
bName.Value = oDoc.PropertySets(4).Item("2.3_Nam").Value
cName.Value = oDoc.PropertySets(4).Item("3.3_Nam").Value
dName.Value = oDoc.PropertySets(4).Item("4.3_Nam").Value
eName.Value = oDoc.PropertySets(4).Item("5.3_Nam").Value
'fName.Value = oDoc.PropertySets(4).Item("6.3_Nam").Value

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manfred Zirk
Mitglied



Sehen Sie sich das Profil von Manfred Zirk an!   Senden Sie eine Private Message an Manfred Zirk  Schreiben Sie einen Gästebucheintrag für Manfred Zirk

Beiträge: 513
Registriert: 01.11.2002

IV2008 SP1 MDT2008 WIN XP SP2, Vista x64
Asus A8N-SLI, AMD Opteron 180 , 4GB,
Quadro FX 3400

erstellt am: 28. Nov. 2007 14:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Steiner Dominik 10 Unities + Antwort hilfreich

Hallo Dominik,

wenn dein Property ein Textfeld ist und der Datentyp String ist, dann
kannst du die Eingabe im Formular entsprechend formatieren:
    oPropSet.Item("ZULETZT_GESPEICHERT_DATUM").Value = Format(Date, "dd/mm/yyyy")

Hier wird die Systemzeit Date formatiert.


auch reiner Text kann als Datum formatiert werden, verbunden mit einer Kontrolle
der Benutzereingabe via VBA.


Grüße

Manfred

[Diese Nachricht wurde von Manfred Zirk am 28. Nov. 2007 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Steiner Dominik
Mitglied
Mechanical Engineer


Sehen Sie sich das Profil von Steiner Dominik an!   Senden Sie eine Private Message an Steiner Dominik  Schreiben Sie einen Gästebucheintrag für Steiner Dominik

Beiträge: 141
Registriert: 12.09.2007

Inventor 2008
SP1
Dell Precision PWS380
Intel(R)
Pentium(R) CPU 3.20GHz
3.19GHz, 3,50GB RAM<P>Windows XP Pro
Version 2002
SP2

erstellt am: 28. Nov. 2007 15:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für die Antwort nur versteh ich sie nicht ganz.

Also noch ma zu meinen Problem Ich holle mir meine Benutzerdef. I-Probs in eine UserForm in ein Textfeld oder umgekehrt.

z.B. Änderungsdatum(i-Prop) in eine Textbox.
Das Änderungsdatum ist in den I-Prop als Date definert stimmt ja auch.
Wenn ich jetzt diesen Wert jetzt in meine Textbox hole schreibt er z.b.:10.10.2007 23.00 also er schreibt auch die Zeit dazu die voll sinnlos ist und ich auch keine Ahnung woher die kommt.
und als zweites Problem habe ich wenn ich jetzt meinen Wert aus der Textbox in die I-Props schreibe das dieser dan als text in den i-props und das will ich auch nicht.

gibt es in der VBAeditor von Inventor kein Feld  für datums oder wie kann ich das sonst lösen wie muss ich die zeile definiern damit die als Datum übergeben übernommen werden kann,

aDat.Value = oDoc.PropertySets(4).Item("1.2_Dat").Value
bDat.Value = oDoc.PropertySets(4).Item("2.2_Dat").Value
cDat.Value = oDoc.PropertySets(4).Item("3.2_Dat").Value
dDat.Value = oDoc.PropertySets(4).Item("4.2_Dat").Value
eDat.Value = oDoc.PropertySets(4).Item("5.2_Dat").Value


aDat ==> ist meine Textbox

Vielen Dank

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manfred Zirk
Mitglied



Sehen Sie sich das Profil von Manfred Zirk an!   Senden Sie eine Private Message an Manfred Zirk  Schreiben Sie einen Gästebucheintrag für Manfred Zirk

Beiträge: 513
Registriert: 01.11.2002

IV2008 SP1 MDT2008 WIN XP SP2, Vista x64
Asus A8N-SLI, AMD Opteron 180 , 4GB,
Quadro FX 3400

erstellt am: 28. Nov. 2007 21:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Steiner Dominik 10 Unities + Antwort hilfreich

Hallo Dominik,

soweit ich das sehe, sind die benutzerdefinierten Properties alle vom Datentyp String oder Variant (Text)
Die zusätzlichen Auswahlmöglichkeiten in dem Reiter Benutzerdefinierte Eigenschaften dienen wohl eher der korrekten Formatierung der Benutzereingabe.

Sobald sie mit VBA beschrieben werden, sind sie eben wieder "Text".

Beim Erzeugen eines benutzerdefinierten Properties mit VBA kann man auch keinen Datentyp auswählen oder zuweisen.

Bei mir wird das Datum ohne die Uhrzeit korrekt in die Textbox geladen. (Als String)
Warum du die Uhrzeit mit angezeigt bekommst, weiß ich nicht.
Du kannst aber das Datum beim Laden in die Textbox formatieren und die Uhrzeit abschneiden.

Die Benutzereingabe kann vor dem Schreiben in das Property auf die korrekte Formatierung hin mit der FORMAT-Funktion von VBA überprüft werden.

Ich sehe nur diesen Weg, aber ich bin kein VBA-Profi.

Grüße

Manfred

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rtend12
Mitglied
Dipl.-Ing. (FH) Maschinenbau / Konstrukteur


Sehen Sie sich das Profil von rtend12 an!   Senden Sie eine Private Message an rtend12  Schreiben Sie einen Gästebucheintrag für rtend12

Beiträge: 436
Registriert: 21.07.2004

Catia V5 (R16SP5, B18SP5)
VB.Net 2003

erstellt am: 28. Nov. 2007 22:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Steiner Dominik 10 Unities + Antwort hilfreich

Hallo Dominik,

versuch doch mal die Logik dahinter zu verstehen.
Es gibt in den benutzerdef. Properties 4 Typen.

Anzahl
Datum
Text
Ja oder Nein

Welchen Datentypen könnten diese Typen entsprechen?
Vielleicht kann man in VBA einen passenden Typ definieren und diesen übergeben.

Gruß
Reinhard

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Steiner Dominik
Mitglied
Mechanical Engineer


Sehen Sie sich das Profil von Steiner Dominik an!   Senden Sie eine Private Message an Steiner Dominik  Schreiben Sie einen Gästebucheintrag für Steiner Dominik

Beiträge: 141
Registriert: 12.09.2007

Inventor 2008
SP1
Dell Precision PWS380
Intel(R)
Pentium(R) CPU 3.20GHz
3.19GHz, 3,50GB RAM<P>Windows XP Pro
Version 2002
SP2

erstellt am: 29. Nov. 2007 08:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Vielen Dank für die Antworten nur mein Problem habe ich nicht lösen können.

In meinen I-Props gibt es ein Benutzerdefiniertes i-Prop welches wie folgt definiert ist

Name: 1.2_Dat
Type: Datum
Wert: z.b 29.11.2007


Dieses I-prop übergib ich in eine Userform bzw. umgekehrt.
jetzt möchte ich gerne wissen wie ich disen Wert den ich von meine Userform  hole und in die I-Props schreibe als Datum definiere. ein kurzes Beispiel wäre super

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manfred Zirk
Mitglied



Sehen Sie sich das Profil von Manfred Zirk an!   Senden Sie eine Private Message an Manfred Zirk  Schreiben Sie einen Gästebucheintrag für Manfred Zirk

Beiträge: 513
Registriert: 01.11.2002

IV2008 SP1 MDT2008 WIN XP SP2, Vista x64
Asus A8N-SLI, AMD Opteron 180 , 4GB,
Quadro FX 3400

erstellt am: 29. Nov. 2007 19:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Steiner Dominik 10 Unities + Antwort hilfreich

Hallo Dominik,

ich habe es bisher nur geschafft, die Properties in passende Variablen zu lesen und wieder zurückzuschreiben.
Dabei bleibt eine Datum ein Datum, usw.
Sobald ich das Datum an ein Textfeld übergebe, sonst nichts mache und wieder zurück schreibe, ist das Property wieder nur Text.

Grüße

Manfred

 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rtend12
Mitglied
Dipl.-Ing. (FH) Maschinenbau / Konstrukteur


Sehen Sie sich das Profil von rtend12 an!   Senden Sie eine Private Message an rtend12  Schreiben Sie einen Gästebucheintrag für rtend12

Beiträge: 436
Registriert: 21.07.2004

Catia V5 (R16SP5, B18SP5)
VB.Net 2003

erstellt am: 29. Nov. 2007 20:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Steiner Dominik 10 Unities + Antwort hilfreich

Hallo Manfred,

der Name deines Steuerelements gibt dir einen Hinweis warum das so ist.
Wenn du etwas in eine Textbox schreibst und der Datentypm in einen Text umgewandelt werden kann, dann klappt das, sonst gibts einen Fehler.
Jetzt willst du den Text wieder zurückschreiben also mußt du den Text wieder in ein Datum umwandeln.
Jetzt müßt ihr noch rausfinden wie man in VBA ein Datum definiert.

Gruß
Reinhard

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Manfred Zirk
Mitglied



Sehen Sie sich das Profil von Manfred Zirk an!   Senden Sie eine Private Message an Manfred Zirk  Schreiben Sie einen Gästebucheintrag für Manfred Zirk

Beiträge: 513
Registriert: 01.11.2002

IV2008 SP1 MDT2008 WIN XP SP2, Vista x64
Asus A8N-SLI, AMD Opteron 180 , 4GB,
Quadro FX 3400

erstellt am: 29. Nov. 2007 22:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Steiner Dominik 10 Unities + Antwort hilfreich

Hallo Reinhard,

ich habe mir das so vorgestellt:

Dim Datum As Date

TextBoxDatum.Value = oPropSet.Item("Datum").Value 'Datum einlesen
TextBoxDatum.Value = "11.11.2305" 'neues Datum in Textbox 'eingeben'

If IsDate(TextBoxDatum.Value) = True Then 'Eingabe konvertierbar?
    MsgBox "Ein neues Datum - Heureka!"
    Datum = Format(CDate(TextBoxDatum.Value), "dd/mm/yyyy")
    oPropSet.Item("Datum").Value = Datum
End If

Grüße

Manfred

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rtend12
Mitglied
Dipl.-Ing. (FH) Maschinenbau / Konstrukteur


Sehen Sie sich das Profil von rtend12 an!   Senden Sie eine Private Message an rtend12  Schreiben Sie einen Gästebucheintrag für rtend12

Beiträge: 436
Registriert: 21.07.2004

Catia V5 (R16SP5, B18SP5)
VB.Net 2003

erstellt am: 29. Nov. 2007 22:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Steiner Dominik 10 Unities + Antwort hilfreich

Hallo Manfred,

genau so gehts.
Die Übung sollte für Dominik sein.
Es werden hier zwar auch die Basics erklärt, wenn man höflich fragt aber ...
Ich hab zwar noch nicht gesucht aber wahrscheinlich gibts 1.000.000 Treffer bei Google mit VBA + Datum und da sollte eine Antwort dabei sein mit der auch Dominik was anfangen kann.

Gruß
Reinhard

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Steiner Dominik
Mitglied
Mechanical Engineer


Sehen Sie sich das Profil von Steiner Dominik an!   Senden Sie eine Private Message an Steiner Dominik  Schreiben Sie einen Gästebucheintrag für Steiner Dominik

Beiträge: 141
Registriert: 12.09.2007

Inventor 2008
SP1
Dell Precision PWS380
Intel(R)
Pentium(R) CPU 3.20GHz
3.19GHz, 3,50GB RAM<P>Windows XP Pro
Version 2002
SP2

erstellt am: 30. Nov. 2007 07:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

vielen Dank für eure Hilfe. habe das Problem selbst gelöst . trotzdem danke.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz