Macro doet het niet in OpenOffice

Status
Niet open voor verdere reacties.

NIh1IlO

Gebruiker
Lid geworden
4 feb 2003
Berichten
750
Alweer eens gegroet specialisten

ik heb met behulp van dit forum een macro gemaakt maar nu stel ik vast dat de macro het niet doet in Open Office 2.3.

In bijlage voeg ik een screenshot om toe te laten met kennis van zaken te oordelen.

Ik hoop alweer eens van de deskundige hulp te kunnen genieten.

Met vriendelijke dank op voorhand.

nIh1IlO
 

Bijlagen

  • OOO2_3.jpg
    OOO2_3.jpg
    95,6 KB · Weergaven: 80
Ik gebruik zelf geen openoffice, maar ik verwacht dat je de functie datediff zult moeten gaan gebruiken ipv date2-date1
 
bedankt ReneDirks

ik wacht tot een specialist-gebruiker van Open Office misschien een concreet antwoord zal kunnen geven.

Vriendelijke groeten

nIh1IlO
 
Probeer voor de grap eens al_dagen als variant te declareren. Omdat je een overloop krijgt betekent dit dat de 'uitkomst niet past'.

Je kunt ook een mod vragen om deze post te verplaatsen naar OpenOffice, je zult daar meer kans hebben op iemand met OOO expertise.
 
Bedankt RenDirks voor de tip maar hij doet het niet.

Ik weet niet hoe ik een 'mod' moet vragen om dit bericht te verplaatsen naar Open Office.

Bestaan hiervoor speciale procedures?

nIh1IlO
 
Klikken op Meld misbruik. Ik vind het ook een tikkie vreemd dat dat zo moet. Misbruik klink meteen zo negatief! Succes met je code verder, misschien dat ik straks nog wel even ooo installeer
 
Beset meedenker ReneDirks

van harte bedankt voor de service! :thumb:

nIh1IlO
 
Verplaatst naar OpenOffice.:)
Klikken op Meld misbruik. Ik vind het ook een tikkie vreemd dat dat zo moet. Misbruik klink meteen zo negatief!
Klinkt misschien vreemd, maar we hebben kort geleden een andere zin gebruikt en dat werkte helemaal niet. Er werden juist vragen gesteld via die knop, die gewoon op het forum horen.

Er staat ook duidelijk een uitleg waarvoor de knop is, als je wat wil melden:

Note: Via deze weg kan u een moderator berichten over een foutief geplaatst topic. Gebruik dit ook om SPAM, reclame berichten en probleem berichten (schelden, taalgebruik, etc) te melden
 
In bijlage voeg ik een screenshot om toe te laten met kennis van zaken te oordelen.

Ik hoop alweer eens van de deskundige hulp te kunnen genieten.

Nou, deskundig .......
Ik kan niet aangeven waarom hij het nu niet doet, maar misschien dat het in de invoer ligt.
Wellicht aan CDate die localeafhankelijk is. Zie bijgevoegd stukje uit macrodocument van Andrew Pitonyak.

Macrodocument van Andrew Pitonyak zei:
1.1. CDate Function
Summary:
Convert to a Date. Numeric expressions contain the date, beginning from December 31, 1899 to the left of the decimal and time to the right of the decimal. String expressions must be formatted as defined by the DateValue and TimeValue function conventions. In other words, the string formatting is locale dependent. CDateFromIso is not dependent on your locale so it safer if you desire to code globally.

Misschien dat je CDateFromISO moet gebruiken ivm de locale-instelling (Je laat nl de datum in formaat "mm/dd/yyyy" invoeren

Probeer onderstaande macro's eens uit, misschien heb je er iets aan.

Code:
Sub VoorbeeldDateValue
  Dim s()

  s = "06/08/2007"
 
  Print "Je bent " + (DateValue(Date) - DateValue(s)) + " dagen geleden al op vakantie geweest!"
end sub

Code:
Sub ExampleDateSerial
  Dim lDate as Long, sDate as String, lNumDays As Long
  lDate = DateSerial(2002, 6, 8)
  sDate = DateSerial(2002, 6, 8)
  MsgBox lDate REM returns 37415
  MsgBox sDate REM returns 06-08-2002
  lDate = DateSerial(02, 6, 8)
  sDate = DateSerial(02, 6, 8)
  MsgBox lDate REM returns 890
  MsgBox sDate REM returns 06-08-1902
end sub

Doe anders de macro even in een documentje dat ik kan openen.
Kan ik er even meer mee. ( Ik ben te lui om alles over te tikken :cool:)
 
Hello DiGro,

sorry voor deze laatijdige reactie maar ik ben enekel weken onbeschikbaar geweest.
In bijlage voeg ik de tekst van de macro, die het niet doet in OpenOffice.
Ik hoop dat je er niets mee aan kan.
Ik heb geprobeerd met de suggesties die je mij gaf, maar ik kwam niet tot een goed resultaat.

Vriendelijke groeten

nIh1IlO
 

Bijlagen

  • vakantieverwijdering.txt
    1,6 KB · Weergaven: 32
Na mijn vorige mail even afgewacht of je nog terug zou komen. :D

Het probleem zit 'm in het begin van de macro.
Je geeft namelijk wel de huidige datum op, maar niet de vakantie datum (str_VakDatum)

Daardoor krijgt str_VakDatum een Null-waarde waarmee aan het einde van de macro
een overloop probleem ontstaat door de berekening.
(macro probeert te rekenen, maar komt er niet uit)

Kopieer de inputbox voor de vakantiedaum en zet die eens vóór de Huidige datum:
Code:
'Dit is een macro om snel te weten hoever je nog verwijderd bent van je vakantie!
'dtHuid_Datum = Date Date is systeemdatum
[COLOR="Blue"] strVak_Datum = InputBox("Voer de begindatum in van je vakantie volgens het formaat dd/mm/jjjj", "Begindatum vakantie")[/COLOR]
dtHuid_Datum = Now 'Now is de huidige datum
i = 0
'Do
Do While Not IsDate(strVak_Datum) And i < 3
    strVak_Datum = InputBox("Voer de begindatum in van je vakantie volgens het formaat dd/mm/jjjj", "Begindatum vakantie")

Volgens mij doet hij het dan weer, omdat hij dan weer met twee datums gaat rekenen ipv met een Null-waarde.

Het lag dus niet aan Cdate e.a dat deed ie prima, ook met Null :shocked: (of is dat eigenlijk niet goed :confused:)
 
Hello DiGro

heb je suggestie opgevolgd maar hij doet het niet in OpenOffice.

Ik stuur nogmaal het aangepaste tekstbestandje mee.

Vriendelijke dank.

nIh1IlO
 

Bijlagen

  • vakantieverwijdering.txt
    1 KB · Weergaven: 33
Doet het nog steeds niet

In de nieuwe staat het invoervak ook nog niet gekopieerd boven dtHuid_Datum
(zie blauwe regel in mijn vorige bericht)

In bijgevoegd tekstbestand heb ik hem daar wel neergezet.
Hiermee dwing je een gebruiker een datum in te voeren, waardoor de macro wel werkt

Ik krijg alleen de macro niet gekoppeld aan een knop

Als ik hem koppel aan bijv de functie toets F3 werkt het wel en krijg ik het invoervenster aangeboden

Bekijk bijlage vakantieverwijderingDiGro.txt
 
Laatst bewerkt:
Beste DiGro,

De macro werkt perfect, ook in OpenOffice! :thumb:

Vriendelijk bedankt en nog veel suc6 met de hulpverlening. Leken appreciëren ten zeerste de kundigheden van specialisten! :cool:

nIh1IlO
 
Verbeterde versie macro

Ben nog even aan het knutselen geweest.

Heb een soort foutafhandeling toegevoegd waardoor de macro,
als er in het geheel geen datum wordt ingevoerd,
niet meer gaat rekenen, maar gewoon stopt.
Je zou daardoor dus geen foutmelding meer kunnen krijgen.

Verder doet de macro wat hij moet doen.

Die verbeterde versie staat in bijgevoegd txtdocument

Suc6
 

Bijlagen

  • Vak_Verwijdering_DiGro2.txt
    1,2 KB · Weergaven: 37
Hello DiGro,

Da's meer dan service op maat!
Persoonlijk vond ik de vorige versie beter, omdat je er na 3 slechte pogingen 'uitlag'. In de nieuwere versie blijf je in het programmaatje tot je werkelijk een goede datum hebt ingegeven. Dit vind ik nogal 'dictatoriaal'.

Nogmaals van harte bedankt om de grenzen te verleggen!

Vriendelijke groeten

nIh1IlO
 
Hello DiGro,
blijf je in het programmaatje tot je werkelijk een goede datum hebt ingegeven. Dit vind ik nogal 'dictatoriaal'.

nIh1IlO

Ik zie wat je bedoelt.
Het is vriendelijker om het berichtje te tonen dat er een goede datum moet worden
ingevoerd.

In bijgaande versie aangepast. Tevens pictogrammen op de vensters geplaatst
en is de titel "soffice" vervangen door een meer gepaste.
 

Bijlagen

  • Vak_Verwijdering_DiGro3.txt
    1,3 KB · Weergaven: 30
Hoikes DiGro,

Nogmaals bedankt voor de verdere hulp.
Ik heb het uitgeprobeerd met volgende vaststellingen:

in MS Office: de macro retourneert een foutmelding.
in Open Office: de macro doet het perfect.

Misschien nog eens checken zodat de macro op beide programma's kan draaien.

Met vriendelijke groeten van

nIh1IlO
 
Ai. In welke sectie zitten we hier dan :D

Ik had niet begrepen dat ie het op MS$ ook moest doen.

Het zijn namelijk twee verschillende talen en het gaat waarsvhijnlijk niet.

Dan moet ik er nog eens extra naar kijken in MS$, want dat heb ik in het geheel niet gedaan.

Als ik ergens nog wat tijd kan lenen ga ik er naar kijken.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan