| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | Von Digital Twins bis Hochleistungs-Computing: PNY präsentiert seine Zukunftstechnologien für die Industrie von morgen, eine Pressemitteilung
|
Autor
|
Thema: VBA und "Peplace" (731 mal gelesen)
|
Dirk.B Mitglied Tischler / Leiter Arbeitsvorbereitung
  
 Beiträge: 534 Registriert: 25.11.2003 AutoCAD 2021/2022 CAD+T HP ZBook 15 G4, 64-bit, WIN 10 Pro
|
erstellt am: 17. Feb. 2004 14:28 <-- editieren / zitieren --> Unities abgeben:         
Hallo zusammen! Hat einer eine Idee, warum dieses so unter AutoCAD 2002 funktioniert und wenn ich mir dieses Programm auf einen Rechner mit AutoCAD 2000 - beide mit BS Win. 2000 pro. - kopiere nicht? Private Sub tbo1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Erlaubt = "0123456789.," & Chr$(8) zeichen = Chr$(KeyAscii) If InStr(1, Erlaubt, zeichen) = 0 Then KeyAscii = 0 End If End Sub Private Sub tbo1_Change() tbo1.Text = Replace(tbo1.Text, ".", ",") End Sub Vielen Dank im voruas. Gruß Dirk
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
   
 Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 17. Feb. 2004 15:00 <-- editieren / zitieren --> Unities abgeben:          Nur für Dirk.B
Hi Dirk, das mit den Acad-Vers. ist mir zwar schleierhaft, teste mal sowas ähnliches: Private Sub TextBox1_Change() TextBox1.Text = Replace(TextBox1.Text, ".", ",") End Sub Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) If Not Chr(KeyAscii) Like "[0123456789.,]" Then KeyAscii = 0 End If End Sub lg Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fuchsi Mitglied Programmierer c#.net Datawarehouse
   
 Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 17. Feb. 2004 15:11 <-- editieren / zitieren --> Unities abgeben:          Nur für Dirk.B
hab leider kein 2000er auf die schnelle zur verfügung: aber schreib mal, was funktioniert nicht. kommt eine fehlermeldung, oder läuft er gar nicht in die prozeduren rein oder ..... setz mal in dieser zeile einen haltepunkt Erlaubt = "0123456789.," & Chr$(8), dann siehst du , ob er überhaupt da rein läuft. ich glaube nämlich, dass unter der 2000er die steuerelement-events andere aufruf konditionen gehabt haben (bin mir aber nicht ganz sicher)
------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BloodyMess Mitglied Applicationingenieur
  
 Beiträge: 604 Registriert: 06.06.2002 AutoCAD Map 3D 2005 Win XP pro
|
erstellt am: 17. Feb. 2004 15:14 <-- editieren / zitieren --> Unities abgeben:          Nur für Dirk.B
Hallo Ihr Zwei, NT4.0, Map2000i -> da tut´s zumindest mal Code:
Private Sub TextBox1_Change() TextBox1.Text = Replace(TextBox1.Text, ".", ",") End SubPrivate Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Dim varErlaubt As Variant Dim varZeichen As Variant varErlaubt = "0123456789.," & Chr$(8) varZeichen = Chr$(KeyAscii) If InStr(1, varErlaubt, varZeichen) = 0 Then KeyAscii = 0 End If End Sub
Gruß TP [Diese Nachricht wurde von BloodyMess am 17. Feb. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fuchsi Mitglied Programmierer c#.net Datawarehouse
   
 Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 17. Feb. 2004 16:12 <-- editieren / zitieren --> Unities abgeben:          Nur für Dirk.B
ich vermute mal, dass es in der VBA-Version unter acad2000 den befehl REPLACE gar nicht gibt. ähnlich wie im office, vba unter office97 kennt ihn nämlich auch nicht. vba unter office XP sehr wohl. ------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Moderator Architekt
   
 Beiträge: 1361 Registriert: 13.02.2003 .
|
erstellt am: 17. Feb. 2004 16:54 <-- editieren / zitieren --> Unities abgeben:          Nur für Dirk.B
Hmm, Fuchsi hat recht, ein Replace tuts tatsächlich nicht  (Sorry hatte unter xls probiert)  Ähm, ohne replace läuft sowas bei mir unter a2k: Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) If Not Chr(KeyAscii) Like "[0123456789.,]" Then KeyAscii = 0 End If If Chr$(KeyAscii) = "." Then KeyAscii = Asc(",") End Sub Komisch, ich war immer der Annahme ein M$ Steuerelement verhält sich gleich.
lg Nancy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dirk.B Mitglied Tischler / Leiter Arbeitsvorbereitung
  
 Beiträge: 534 Registriert: 25.11.2003
|
erstellt am: 21. Feb. 2004 18:12 <-- editieren / zitieren --> Unities abgeben:         
Hallo Zusammen! Danke an alle, die sich meinem Problem angenommen haben. Bin leider selber noch nicht dazu gekommen die verschieden Varinten auszuprobieren, aber das Wochenende ist jaaaaa... noch lang. Gruß Dirk Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |