| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
 | Visiativ Blog | Tipps & Tricks rund um SOLIDWORKS und 3DEXPERIENCE. , ein Kurs
|
Autor
|
Thema: VBA Potenzen funktionieren nicht (545 / mal gelesen)
|
KSAH Mitglied Freiberufler
 
 Beiträge: 188 Registriert: 18.06.2015 SolidWorks 2010 bis 2021
|
erstellt am: 11. Okt. 2024 16:54 <-- editieren / zitieren --> Unities abgeben:         
Servus, iich bekomme in VBA keine Potenz berechnet (A = B ^ C). Im VBA Excel funktioniert es. Ich habe mir auch schon die Verweise zwischen Excel und SW angesehen. Auch habe ich den Excel Verweis geladen. Was übersehe ich? Ich muss ein paar Bit- Operationen machen. Ich habe mir jetzt schon eine Funktion Potenz geschrieben. Aber das ist nicht die Lösung. VBA kann auch keine Bit-Verschiebung und ich kann auch keine Zahl binär darstellen, Hex geht. Zum glück gehen die logischen Operationen. Aber was ist mit: >> << ^? Viele Grüße Andreas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Torsten Niemeier Ehrenmitglied V.I.P. h.c. Maschinenbau Ingenieur

 Beiträge: 3828 Registriert: 21.06.2001 "ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform ** CSWP 04/2011 ** ** CSWE 08/2011 **
|
erstellt am: 11. Okt. 2024 19:29 <-- editieren / zitieren --> Unities abgeben:          Nur für KSAH
Zitat: Original erstellt von KSAH: Servus,iich bekomme in VBA keine Potenz berechnet (A = B ^ C). Im VBA Excel funktioniert es. Ich habe mir auch schon die Verweise zwischen Excel und SW angesehen. Auch habe ich den Excel Verweis geladen. Was übersehe ich?
Zeige bitte mal die Fehlermeldung, die sich beim Gebrauch von "^" ergibt und die Zeile, die sie auslöst. Zeige bitte mal einen Screenshot Deiner benutzten Verweise. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KSAH Mitglied Freiberufler
 
 Beiträge: 188 Registriert: 18.06.2015 SolidWorks 2010 bis 2021
|
erstellt am: 11. Okt. 2024 20:27 <-- editieren / zitieren --> Unities abgeben:         
Meiin Fehler. Ich habe es ohne Lehrzeichen geschrieben, weil ich erwartet hatte, die Leerzeichen werden eingefügt. Die Zeile wurde Rot. Mit Lehrzeichen funzt es. Warum ich es gerade jetzt mit Leerzeichen gechrieben habe, weiß der Teufel. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ad_man Mitglied freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))
   
 Beiträge: 1487 Registriert: 20.12.2003 SolidWorks 2024 SP5 mit Enterprise PDM , Windows 11, Dell Precision 3660, i7-12700K, 96 GB DDR-Ram, Quadro RTX A4000
|
erstellt am: 11. Okt. 2024 22:21 <-- editieren / zitieren --> Unities abgeben:          Nur für KSAH
Hallo Andreas, Zitat: Original erstellt von KSAH: ... Ich muss ein paar Bit- Operationen machen. Ich habe mir jetzt schon eine Funktion Potenz geschrieben. Aber das ist nicht die Lösung. VBA kann auch keine Bit-Verschiebung und ich kann auch keine Zahl binär darstellen, Hex geht. Zum glück gehen die logischen Operationen. Aber was ist mit: >> << ^?
schau mal hier: https://www.excely.com/excel-vba/bit-shifting-function.shtml Das sollten deine gesuchten Shift-Funktionen sein ------------------ ========== Gruß Andreas ========== Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KSAH Mitglied Freiberufler
 
 Beiträge: 188 Registriert: 18.06.2015 SolidWorks 2010 bis 2021
|
erstellt am: 12. Okt. 2024 20:46 <-- editieren / zitieren --> Unities abgeben:         
Ja das sind die Funktionen. Hatte es auch gefunden, aber keine Lust wieder was einzubauen, was eigentlich vorhanden sein müsste. Ich hatte es dann ohne Verschieben gelöst, anders gelöst. Ich habe auch noch keinen Weg gefunden, eigene kleine Funktionen in einer Header-Datei zu schreiben. Unter C gab es die Möglichkeit, wiederkehrende Funktionen in eine allgemeinen Datei zu schreiben und immer wieder bei neuen Projekten zu laden. Vielleicht sollte ich doch wieder mit C/C++ anfangen. Ist aber lange her. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KSAH Mitglied Freiberufler
 
 Beiträge: 188 Registriert: 18.06.2015 SolidWorks 2010 bis 2021
|
erstellt am: 13. Okt. 2024 17:19 <-- editieren / zitieren --> Unities abgeben:         
Falls es jemanden interessiert, ich habe es mit einer Multiplikation gelöst. Ich schreibe mal Binär: 11 * 100 = 1100 3 * 4 = 12 Schiebe die 2 Bits 2x nach links. << würde noch den Überlauf berücksichtigen. Aber das brauche ich nicht. Das wird zB benüzigt, wenn man einer Trägervariable mehrere Werte zuweisen möchte. Zum Beispiel SetAttr und GetAttr (Hilfe) nutzt das. Oder die Funktion RGB. Wenn man Rot haben möchte kann man auch statt RGB(255,0,0) kann man auch &H0000FF oder &HFF oder 255 schreiben. Blau ist &HFF0000. Nur als Hinweis warum und wieso. Hatte ich auch lange nicht gewusst. Aber jetzt speichere und übergebe ich mehrere Bits in einer Integer, oder ganze Koordinaten. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KSAH Mitglied Freiberufler
 
 Beiträge: 188 Registriert: 18.06.2015 SolidWorks 2010 bis 2021
|
erstellt am: 21. Okt. 2024 20:25 <-- editieren / zitieren --> Unities abgeben:         
Ich stelle immer wieder fest, VBA ist extrem umständlich. Beispiel Tastatur. Unter VB kann man die Tasten auf Userformebene abfangen. Unter VBA geht das nur im Button. Also einen Button als Empfänger und immer wieder den Fokus drauf setzen. Timer gehen nicht direckt. Also wieder die User32.dll anköpfen. Aber der Timer geht nicht im Userform und vom normalen Code kommt man nicht ins Usereform rein. Der Timer swapt eine Textbox und die überwache ich. Doppelklick geht nicht ohne Timer. Zuerst kommt immer der einfache Klick. Den muss man rauszögern und warten ob ein Doppelklick kommt. Also Timer. Und wehe es geht was schief. SW und VBA stürzen ab. VBA ist einfch. Man muss sich um nichts kümmern, aber auf der anderen Seite wieder umständlich. Ich müsste doch mal wieder in C/C++ rein. Aber ich habe keine Programmiersoftware mehr. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ad_man Mitglied freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))
   
 Beiträge: 1487 Registriert: 20.12.2003 SolidWorks 2024 SP5 mit Enterprise PDM , Windows 11, Dell Precision 3660, i7-12700K, 96 GB DDR-Ram, Quadro RTX A4000
|
erstellt am: 22. Okt. 2024 09:07 <-- editieren / zitieren --> Unities abgeben:          Nur für KSAH
|
KSAH Mitglied Freiberufler
 
 Beiträge: 188 Registriert: 18.06.2015 SolidWorks 2010 bis 2021
|
erstellt am: 22. Okt. 2024 11:30 <-- editieren / zitieren --> Unities abgeben:         
OK also gibt es noch das Studio for free. Damals war das Studio Express nicht so gut. Formulare konnte man besipielsweise nicht basteln. Man musste die zur Laufzeit mit Funktionen aufsetzen. Mal sehen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |