[OPGELOST] Hulp bij het maken van een macro (Calc)
[OPGELOST] Hulp bij het maken van een macro (Calc)
Hallo,
Ik ben nog vrij onbekend met het maken van een macro. Na een aantal keren proberen lukt het mij dan ook om een simpele macro uit te voeren. Alleen blijf ik met een paar vragen zitten.
Wanneer ik een hele rij selecteer om bijv te verplaatsen van kolom B naar D. Dan gaat dit niet goed wanneer ik de macro uitvoer. Wanneer ik alle cellen stuk voor stuk verplaats gaat dit wel goed. Dit geld ook voor het aanpassen van de rijhoogte en kolombreedte. Verder wanneer ik een lege kolom verwijder, blijft deze staan. Wie kan mij verder helpen, met deze, vast simpele dingen.
groeten Annemieke
Ik ben nog vrij onbekend met het maken van een macro. Na een aantal keren proberen lukt het mij dan ook om een simpele macro uit te voeren. Alleen blijf ik met een paar vragen zitten.
Wanneer ik een hele rij selecteer om bijv te verplaatsen van kolom B naar D. Dan gaat dit niet goed wanneer ik de macro uitvoer. Wanneer ik alle cellen stuk voor stuk verplaats gaat dit wel goed. Dit geld ook voor het aanpassen van de rijhoogte en kolombreedte. Verder wanneer ik een lege kolom verwijder, blijft deze staan. Wie kan mij verder helpen, met deze, vast simpele dingen.
groeten Annemieke
Laatst gewijzigd door a.boesjes op ma sep 28, 2009 9:06 am, 1 keer totaal gewijzigd.
OpenOffice.org versie 3.1
Windows
Windows
Re: Hulp bij het maken van een macro
Het is niet helemaal duidelijk wat de macro moet doen en wat de gebruiker moet doen. Moet de macro de kolom selecteren waar de cursor in staat en dan die kolom verplaatsen? Of selecteert de gebruiker de kolom zelf en moet de macro alleen de selectie verplaatsen? En wat moet de macro doen bij het instellen van de rijhoogte en kolombreedte?
* AOO 4.1.11 en LibreOffice 7.6.1.2 op Ubuntu 20.x
* Heb je de survival guide voor het forum al gelezen?
* Heb je de survival guide voor het forum al gelezen?
Re: Hulp bij het maken van een macro
De macro moet de kolommen verplaatsen, zodat de sheet overzichtelijker wordt voor de gebruiker. De uiteindelijke sheet met barcodes moet uitgeprint worden zodat deze gescant kan worden. Met het scannen met er dus genoeg ruimte tussen de cellen zitten, zodat er maar 1 barcode gescant word.
OpenOffice.org versie 3.1
Windows
Windows
Re: Hulp bij het maken van een macro
Wat het resultaat moet zijn is wel duidelijk, het gaat er mij om wat de macro precies moet doen. En dan bedoel ik ook precies. Details dus. Zoals: stelt de macro alle rijhoogtes in op dezelfde waarde? Of kan het elke keer anders zijn? In het eerste geval is een sjabloon voor het rekenblad misschien wel eenvoudiger dan een macro. Moet steeds kolom B naar kolom D? Zulke dingen.
* AOO 4.1.11 en LibreOffice 7.6.1.2 op Ubuntu 20.x
* Heb je de survival guide voor het forum al gelezen?
* Heb je de survival guide voor het forum al gelezen?
Re: Hulp bij het maken van een macro
ok, dan nu in detail, want niet alle rij hoogtes zijn gelijk.
rij 1 = 0.45 cm
rij 2 t/m 17 = 1.45 cm
rij 18-19 = 0.45 cm
rij 20 t/m 35 = 1.45 cm
rij 36-37 = 0.45 cm
rij 38 t/m 45 = 1.45 cm
De kolommen varieren ook:
kolom A 1.80 cm
Kolom B 3.00 cm
kolom C 4.50 cm
kolom D 3.00 cm
kolom E 3.50 cm
rij 1 = 0.45 cm
rij 2 t/m 17 = 1.45 cm
rij 18-19 = 0.45 cm
rij 20 t/m 35 = 1.45 cm
rij 36-37 = 0.45 cm
rij 38 t/m 45 = 1.45 cm
De kolommen varieren ook:
kolom A 1.80 cm
Kolom B 3.00 cm
kolom C 4.50 cm
kolom D 3.00 cm
kolom E 3.50 cm
OpenOffice.org versie 3.1
Windows
Windows
Re: Hulp bij het maken van een macro
Dat bedoelde ik dus niet. Ik bedoelde wel: in detail aangegeven wat de gebruiker moet doen en wat de macro moet doen. Moet de gebruiker die getallen ergens invoeren en zorgt de macro dan voor de rest, of moet de macro die waarden gewoon elke keer instellen? En hoe vaak moet het worden gedaan? - is dit iets voor eenmalig gebruik? Want dan is een macro zinloos.
Wat ik vaak heb gedaan als ik een macro maakte (voor Word trouwens, met OOo heb ik er nog niet veel mee gedaan) is eerst een macro opnemen die - voor dit geval - de rijhoogte voor één rij instelt. Vervolgens open ik dan de macro in de macro-editor, kopieer re regels voor dat rijhoogte instellen en plak die er een paar keer onder, dan pas ik in de kopieën de nummering aan (rij 1 wordt dan rij 2, 3 enz.). Vervolgens testen of dat werkt. Hetzelfde voor de kolombreedtes.
Wat ik vaak heb gedaan als ik een macro maakte (voor Word trouwens, met OOo heb ik er nog niet veel mee gedaan) is eerst een macro opnemen die - voor dit geval - de rijhoogte voor één rij instelt. Vervolgens open ik dan de macro in de macro-editor, kopieer re regels voor dat rijhoogte instellen en plak die er een paar keer onder, dan pas ik in de kopieën de nummering aan (rij 1 wordt dan rij 2, 3 enz.). Vervolgens testen of dat werkt. Hetzelfde voor de kolombreedtes.
* AOO 4.1.11 en LibreOffice 7.6.1.2 op Ubuntu 20.x
* Heb je de survival guide voor het forum al gelezen?
* Heb je de survival guide voor het forum al gelezen?
Re: Hulp bij het maken van een macro
Ik ben hier blijkbaar nog niet zo handig in. De gebruiker opent een bestand (zie voorbeeld) en het is dan de bedoeling dat de macro ze sorteert op rackpos(dit lukt me nog wel). Vervolgens wil ik dan de volgende kolomvolgorde: rackpos --> SampleID --> Samplebarcode --> QiagenID --> Qiagenbarcode wordt, ook door de macro.
Dat met die hoogtes moet ik nog even proberen.
Het is wel de bedoeling dat de macro iedere dag gebruikt wordt, nu doe ik alles nog handmatig. Dit kost gewoon veel tijd
Dat met die hoogtes moet ik nog even proberen.
Het is wel de bedoeling dat de macro iedere dag gebruikt wordt, nu doe ik alles nog handmatig. Dit kost gewoon veel tijd
- Bijlagen
-
- voorbeeld.ods
- (9.33 KiB) 563 keer gedownload
OpenOffice.org versie 3.1
Windows
Windows
Re: Hulp bij het maken van een macro
Hallo
Ik denk dat beter is om gebruik te maken van de ingebouwd mogelijkheden die OpenOffice.org heeft. Ik weet niet wat je prcies nodig hebt maar ik krijg de indruk dat je te vroeg naar macro's grijpt en de mogelijkheden die er zijn niet gebruikt. Macro's bouwen is niet zo handig zeker complexe macro's bouwen kost veel tijd en ik denk niet dat je dat er uit haalt.
Hoe veel data-rijen komen er in het totale bestand.
Ook de oorsprong van de data is relevant. Staat het al in een werkblad of wordt het op een andere manier aangeleverd?
Als je verder wilt gaan met macros dan kan deze link belangrijk zijn om opgenomen macros te bestuderen en te veranderen
http://www.openoffice.org/files/documen ... rence.html
Voor het begrijpen van macros en de api bestudeer deze handleiding.
http://wiki.services.openoffice.org/wik ... ASIC_Guide
Romke
Ik denk dat beter is om gebruik te maken van de ingebouwd mogelijkheden die OpenOffice.org heeft. Ik weet niet wat je prcies nodig hebt maar ik krijg de indruk dat je te vroeg naar macro's grijpt en de mogelijkheden die er zijn niet gebruikt. Macro's bouwen is niet zo handig zeker complexe macro's bouwen kost veel tijd en ik denk niet dat je dat er uit haalt.
Hoe veel data-rijen komen er in het totale bestand.
Ook de oorsprong van de data is relevant. Staat het al in een werkblad of wordt het op een andere manier aangeleverd?
Als je verder wilt gaan met macros dan kan deze link belangrijk zijn om opgenomen macros te bestuderen en te veranderen
http://www.openoffice.org/files/documen ... rence.html
Voor het begrijpen van macros en de api bestudeer deze handleiding.
http://wiki.services.openoffice.org/wik ... ASIC_Guide
Romke
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
Re: Hulp bij het maken van een macro
Heb een kleine vraag, waarom start je niet met deze volgorde?
rackpos --> SampleID --> Samplebarcode --> QiagenID --> Qiagenbarcode
Bedoel als je het toch altijd in deze volgorde wilt hebben...
rackpos --> SampleID --> Samplebarcode --> QiagenID --> Qiagenbarcode
Bedoel als je het toch altijd in deze volgorde wilt hebben...
OpenOffice 3.1 op Windows Vista
Nog niet gehinderd door enige vorm van kennis....
Nog niet gehinderd door enige vorm van kennis....
Re: Hulp bij het maken van een macro
Hallo
Ik denk dat we een beetje medelijden met de OP moeten hebben. Er werden antwoorden gevraagd. En bij elke post komen er meer vragen.
Romke
Ik denk dat we een beetje medelijden met de OP moeten hebben. Er werden antwoorden gevraagd. En bij elke post komen er meer vragen.
Romke
LibreOffice 7.4.3.2 op openSUSE Leap 15.4
Re: Hulp bij het maken van een macro
Klein voorbeeldje van hoe je zoiets ook kan doen...
Misschien dat je hier wat aan hebt dan...
Code: Selecteer alles
sub DataWissel
oDoc = ThisComponent
Rem Naam van het blad is dacht ik "Blad1" anders veranderen...!
oSheet = ThisComponent.Sheets.getByName("Blad1")
Rem bepalen wat de laatst gebruikte rij is..
oCurs = oSheet.createCursor
oCurs.gotoEndOfUsedArea(True)
oNumRows = oCurs.Rows.Count
For y = 0 to oNumRows
Rem data ophalen
oCell1 = oSheet.getCellByPosition(1,y)
oCell2 = oSheet.getCellByPosition(2,y)
oCell3 = oSheet.getCellByPosition(3,y)
oCell4 = oSheet.getCellByPosition(4,y)
oData1 = oCell1.getString()
oData2 = oCell2.getString()
oData3 = oCell3.getString()
oData4 = oCell4.getString()
Rem controleer of Kolom al goed staat, zo ja dan stoppen met de macro
Rem er wordt gecontroleerd of de data van kolom B op de eerste rij de text 'Sample' ID bevat.
If oData1 = "SampleID" then exit sub
Rem Data terug plaatsen maar in een andere kolom
oCell1.SetString(oData3)
oCell2.SetString(oData4)
oCell3.SetString(oData1)
oCell4.SetString(oData2)
Next
end sub
OpenOffice 3.1 op Windows Vista
Nog niet gehinderd door enige vorm van kennis....
Nog niet gehinderd door enige vorm van kennis....
Re: Hulp bij het maken van een macro
bedankt voor de uitleg, ik ga hier mee aan de slag!
OpenOffice.org versie 3.1
Windows
Windows