Visual Basic G++ editor voor USBCNC,was: VBA voor Excell '97

Vragen die je boven niet kwijt kunt, kan je hier stellen.

Moderator: Moderators

Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Visual Basic G++ editor voor USBCNC,was: VBA voor Excell '97

Bericht door Arie Kabaalstra »

Luitjes..

't lijkt wel of ik alles wil leren.. maar een collega heeft me vandeweek op weg geholpen met het schrijven van Macrootjes in VBA, ( Visual basic for Applications ), nu wil ik met een paar Forms blokken met variabelen definieren, en in een sheetje zetten..

't is mijn bedoeling om een cel te selecteren ( daar waar ik een Cyclus wil gaan programmeren) en dan in mijn form een button aanklikken, en dan de dialoog invullen, en op Ok klikken, om de variabelen met alles erop en eraan in de sheet te mikken..

't probleem is nu echter, als ik een Form op mijn scherm heb staan bij wijze van toolbar, dan kan ik geen cel meer selecteren..

hoe stel ik mijn properties in dat dat wel gaat?..

Ik wil dus eigenlijk mijn Form1 als "Toolbox" hebben staan.. klik op "Drilling" en ik show form2, hide form1, en vul de dialoog in, bij OK show ik 1, hide ik 2, en plak de ingevoerde waarden in mijn Sheet..
Laatst gewijzigd door Arie Kabaalstra op 20 jul 2008 23:00, 1 keer totaal gewijzigd.
r0g3r
Berichten: 135
Lid geworden op: 20 mei 2007 02:36
Locatie: Heerlen
Contacteer:

Re: VBA voor Excell '97

Bericht door r0g3r »

Dit gaat niet lukken in Excel.
Als er een VBA form geopend is is deze top most en je kunt niets meer in je excel sheet doen.
Het beste kun je alle data in de sheet zetten en dan alles besturen via de form.
suc6
‹(•¿•)›
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: VBA voor Excell '97

Bericht door Arie Kabaalstra »

da's dus niet waar.. ik heb op mijn werk wat zitten prutsen, met een recentere versie... daar kan het wel.. mogelijk zit dat dus niet in mijn oudere versie..

Nevermind eigenlijk.. ik ben vanavond begonnen in Visual Studio 2005 met het bouwen van een applicatie..

't enige is dat ik nu even moet weten hoe je een "enter" of "Return" aan een textbox toevoegd, en een "Tab"

Dus:

TextBox1.Text = TextBox1.Text + "en dan hier de code voor "enter" of een tab."
r0g3r
Berichten: 135
Lid geworden op: 20 mei 2007 02:36
Locatie: Heerlen
Contacteer:

Re: VBA voor Excell '97

Bericht door r0g3r »

Elk karakter kun je als nummer terugvinden in de ANSI tabel.
Voor enter is dit nummer 13 , spatie is nummer 32
Met de funtie Chr() krijg je weer een karakter .
Voor een Tab print je dan enkele spaties achterelkaar.

Text1.Text = Text1.Text & Chr(13) & Chr(32) & Chr(32) & Chr(32) & Chr(32)
‹(•¿•)›
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: VBA voor Excell '97

Bericht door Arie Kabaalstra »

een paar spaties tussen "" gaat ook wel, maar ik wil een kolommen indeling kunnen maken..

als ik een variabele heb gedefinieerd, dan moet de functie daarvan als Comment (FEED) erachter komen te staan, liefst allen comments netjes boven elkaar..

een Tab zet de cursor naar een bepaalde kolom in je tekst vak.. da's wat anders dan 6 spaties...
Gebruikersavatar
salautom
Berichten: 259
Lid geworden op: 08 jan 2008 02:07
Locatie: Beilen

Re: VBA voor Excell '97

Bericht door salautom »

tab heeft ook een ASCII code: 9
met vriendelijke groeten,

Henk.

mijn hobby: Bouw full-scale flightdeck Airbus A320
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: VBA voor Excell '97

Bericht door Arie Kabaalstra »

Dus als ik het goed begrijp dan zet ik in mijn sourcecode:

Text1.Text = Text1.Text + Chr(9)

Ga ik proberen..

ik wil voor mezelf een programmeer applicatie met dialogen schrijven, en zo komen mijn dialoogjes dan mooi in g-code in 't bestand te staan..
Gebruikersavatar
salautom
Berichten: 259
Lid geworden op: 08 jan 2008 02:07
Locatie: Beilen

Re: VBA voor Excell '97

Bericht door salautom »

een tip voor het schrijven van macro's, is een macro opnemen, dan de functies met de hand (cursor of muis) doen, dan de opname stoppen, en vervolgens de macro bewerken (waar je kan zien wat de commando's zijn die je hebt uitgevoerd)
met vriendelijke groeten,

Henk.

mijn hobby: Bouw full-scale flightdeck Airbus A320
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: VBA voor Excell '97

Bericht door Arie Kabaalstra »

door de Tips hier, en vandeweek op mijn werk, ben ik nu volle bak aan het "bouwen" aan een Applicatie.

Doordat USBCNC tegenwoordig een "Macro-file"heeft, waar je veelgebruikte subroutines in kan parkeren, ben ik eens gaan nadenken om één en ander te structureren.

Door mijn jarenlange ervaring met Heidenhain besturingen was ik behoorlijk vleugellam toen ik met CNC op "hobby-niveau" begon.
Door de Inspanningen van Bert Eding, en zijn USBCNC, met een nieuwe GUI, waar ik ook aan mocht meewerken, is het programmeren aan de machine al een stuk makkelijker geworden.

Door de Macro File ben ik nu in staat om "echte Cycli" te schrijven, boren, ronde en rechthoekige kamers, vlakken frezen, schroefdraad.. alles heb ik slim in subroutines gezet.

't programmeren van bijvoorbeeld een rechthoekige kamer is niet meer dan een "blokje Parameters" definieren, en Gosub Cycle onder mijn "voorpositioneerbeweging zetten.. iets in de trant van:

T1 M6
(CYCLE DEFINITION RECTANGULARPOCKET)
#4900=7 (CYCLE IDENTIFIER)
#4000=1 (SAFETYDISTANCE)
#4001=3 (DEPTH)
#4002=-2 (DEPTHSTEP)
#4010=300 (INFEED)
#4011=1000 (FEED)
#4003=15 (X LENGTH)
#4004=20 (Y LENGTH)
#4005=5 (CORNERRADIUS)
G00 X15 Y15 Z1
GOSUB Cycle
M2

bovenstaand stukje code genereerd op de Beagle met mijn Macrofile een rechthoekige kamer van 15 x 20mm met een diepte van 3 en een hoekradius van 5mm , 2mm per keer naar beneden met 300 mm/min (ramp-infeed), en een voeding van 1100, die wordt uitgevoerd op X15 Y15

omdat het intikken van zo'n blokje parameters best wel een bak werk is, kopieerde ik het totnogtoe uit een "master bestand".

opzich niet gek, maar 't moest beter kunnen, en ik zou dat graag met een dialoog doen..
dus ben ik aan het schrijven gegaan.. de resultaten tot nu toe:

Afbeelding

Ik heb nog een lange weg te gaan.. tot nu toe werkt alles naar behoren, maar ik kan de gegenereerde code nog niet saven.. 't File menu is nog niet klaar.. :).. eerst maar eens kijken hoe dat werkt.. 't zal nog wel een avondje klooien worden.. :)
Laatst gewijzigd door Arie Kabaalstra op 21 jul 2008 13:31, 1 keer totaal gewijzigd.
Gebruikersavatar
serum
Berichten: 5418
Lid geworden op: 08 mar 2008 20:37
Locatie: Zwolle

Re: Visual Basic G++ editor voor USBCNC,was: VBA voor Excell '97

Bericht door serum »

Mooi!

komt er ook een optie om met een spiraal beweging te boren?
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: Visual Basic G++ editor voor USBCNC,was: VBA voor Excell '97

Bericht door Arie Kabaalstra »

Spiral milling bedoel je?.. ja, dat kan ik er zo ingooien.. ik neem gewoon de macro voor schroefdraadfrezen, en zet er een controle in, dan Dfrees groter of gelijk moet zijn aan de radius en kleiner dan de diameter van het gat..:)

knopje toevoegen moet ook wel gaan..

let wel.. voorlopig werkt dit alleen met MIJN macro.cnc file, en gezien de bak werk die ik daarin heb zitten, ben ik vooralsnog niet geneigd om het als shareware op het net te klepperen..

maar.. !!.. 't schrijven in Visual basic is niet al te moeilijk, en ik zou natuurlijk een tutorialletje kunnen maken om een dergelijke applicatie zelf te bouwen voor je eigen Macro.cnc file
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: Visual Basic G++ editor voor USBCNC,was: VBA voor Excell '97

Bericht door Arie Kabaalstra »

hoe ik een textbox in een file moet opslaan ben ik nog niet achter.. maar ik vond een leuk alternatief..

een textbox kan ook een doubleclick als event handlen.. daarmee aan de slag gegaan.. en doubleclick op het tekstvak kopieert de hele inhoud, en opent Notepad.. daar kun je dan met CTRL-V de boel zo inplakken.. :)

een File-Save/Save as dialoog komt er ook heus nog wel een keer.. misschien maak ik wel een Popup menu op de textbox..
Gebruikersavatar
Joost
Berichten: 180
Lid geworden op: 24 jan 2007 10:38
Locatie: Veldhoven
Contacteer:

Re: Visual Basic G++ editor voor USBCNC,was: VBA voor Excell '97

Bericht door Joost »

Hallo Arie,

Er even van uitgaande dat VBA ongeveer hetzelfde is als de 'normale' Visual Basic.., kijk hier eens naar: http://www.tutorialized.com/view/tutori ... iles/11920 een korte en simpele tutorial over hoe je tekst naar een bestand schrijft.

Als je op de huidige manier verder wil kan je ook dit gebruiken:
Shell "notepad", vbNormalFocus
SendKeys "^v"
SendKeys "^s"

Dit opent notepad, plakt de tekst (^v = ctrl+v) en slaat het op.

Dit verdient niet de schoonheidsprijs...
LinuxCNC user
Gebruikersavatar
Arie Kabaalstra
Donateur
Berichten: 13536
Lid geworden op: 07 feb 2007 18:37
Locatie: Bakhuuz'n
Contacteer:

Re: Visual Basic G++ editor voor USBCNC,was: VBA voor Excell '97

Bericht door Arie Kabaalstra »

inmiddels is de G++ Editor een Stand-alone applicatie geworden.. ik werk in Visual studio 2005, voor zover ik weet is dat reeds VB.NET.

het Shell Commando had ik al gevonden zoals je hebt kunnen lezen.. de optie om de geselecteerde text te plakken kende ik nog niet.. ga ik er vanavond inplakken..

Ook die link ga ik eens op mijn gemak napluizen..

op zich is deze oplossing:

Shell "notepad", vbNormalFocus
SendKeys "^v"

al leuk genoeg... ik zou het zo kunnen doen dat je een stuk code selecteerd, en even parkeert in een Notepad.. een soort fysiek klembord.. of je het opslaat is dan aan de gebruiker..
Plaats reactie