[Résolu][Calc] Différence de comportement des dates.
Modérateur : Vilains modOOs
Règles du forum
Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
-
stefalci
- Membre OOrganisé

- Messages : 70
- Inscription : 17 déc. 2007 18:23
- Localisation : Fontaine les dijon
[Résolu][Calc] Différence de comportement des dates.
Bonjour à Toutes et Tous,
Je reviens vers vous pour vous soumettre un test de comportement car je ne sais plus dans quelle direction chercher.
Après de nombreux essais, j'ai repris un exemple simplifié du livre de Bernard et Laurent et je constate la même différence.
Je collecte par macro, différentes dates dans des boites de dialogue.
Sur WXP et en LO 3.6 tout fonctionne comme je le souhaite.
Sur W7-64 en LO 4.5 j'obtiens systématiquement une erreur sur l’exécution de la commande de récupération de la date dans le champ.
J'ai donc réduit au maximum l'appli et vous propose l'essai pour me confirmer sur d'autres environnements ce changement de comportement
Ci joint une petite macro de test et le message d'erreur sur la deuxième feuille du classeur.
Merci
Je reviens vers vous pour vous soumettre un test de comportement car je ne sais plus dans quelle direction chercher.
Après de nombreux essais, j'ai repris un exemple simplifié du livre de Bernard et Laurent et je constate la même différence.
Je collecte par macro, différentes dates dans des boites de dialogue.
Sur WXP et en LO 3.6 tout fonctionne comme je le souhaite.
Sur W7-64 en LO 4.5 j'obtiens systématiquement une erreur sur l’exécution de la commande de récupération de la date dans le champ.
J'ai donc réduit au maximum l'appli et vous propose l'essai pour me confirmer sur d'autres environnements ce changement de comportement
Ci joint une petite macro de test et le message d'erreur sur la deuxième feuille du classeur.
Merci
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par stefalci le 05 juin 2014 08:59, modifié 3 fois.
LibreOffice 25.2 sous Ubuntu 22.04 LTS
LibreOffice Version: 25.2.5.2 sous W7 64b SP1
LibreOffice Version: 25.2.5.2 sous W7 64b SP1
-
Dude
- IdOOle de la suite

- Messages : 26195
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
Re: [Calc] Différence de comportement des dates.
Opération lunettes de vue : https://forum.openoffice.org/fr/forum/v ... =8&t=41236
-
stefalci
- Membre OOrganisé

- Messages : 70
- Inscription : 17 déc. 2007 18:23
- Localisation : Fontaine les dijon
Re: [Calc] Différence de comportement des dates.
Merci de ce guidage Dude, j'avais lu ce post mais je ne vois pas comment faire pour récupérer la date en entier
et au format (jj/MMMM/AAAA).
Les seuls résultats que j'obtienne sont les arguments séparés JJ, MM, AAAA
Existe t il d'autres pistes pour capturer la date formatée d'un controle. J'ai un peu d'expérience en basic mais je
ne maitrise pas toutes les subtilités et dans le cas présent Xray ne m'apporte pas de solution, ou du moins j'en ai
pas trouvée.
Merci de la piste
et au format (jj/MMMM/AAAA).
Les seuls résultats que j'obtienne sont les arguments séparés JJ, MM, AAAA
Existe t il d'autres pistes pour capturer la date formatée d'un controle. J'ai un peu d'expérience en basic mais je
ne maitrise pas toutes les subtilités et dans le cas présent Xray ne m'apporte pas de solution, ou du moins j'en ai
pas trouvée.
Merci de la piste
LibreOffice 25.2 sous Ubuntu 22.04 LTS
LibreOffice Version: 25.2.5.2 sous W7 64b SP1
LibreOffice Version: 25.2.5.2 sous W7 64b SP1
-
Churay
- ManitOOu

- Messages : 2668
- Inscription : 30 avr. 2009 04:54
- Localisation : CATALUNYA
Re: [Calc] Différence de comportement des dates.
stefalci a écrit :../.. au format (jj/MMMM/AAAA).
Les seuls résultats que j'obtienne sont les arguments séparés JJ, MM, AAAA
Code : Tout sélectionner
sDate = sVarJJ & "/" & sVarMMMM & "/" & sVarAAAAcOOordialement
---
AOO 4.0.1 W7-PRO & LO 5.1.6.2 Debian 7.8 & Ubuntu 16.04 LTS
---
F1 : ça aide...
XRay + SDK
---
Quand le NOT CONFIRMED sera corrigé (OOo et LO) , je serai heureux...
---
AOO 4.0.1 W7-PRO & LO 5.1.6.2 Debian 7.8 & Ubuntu 16.04 LTS
---
F1 : ça aide...
XRay + SDK
---
Quand le NOT CONFIRMED sera corrigé (OOo et LO) , je serai heureux...
-
stefalci
- Membre OOrganisé

- Messages : 70
- Inscription : 17 déc. 2007 18:23
- Localisation : Fontaine les dijon
Re: [Calc] Différence de comportement des dates.
Merci Churray, mais ca je sais faire et ne correspond pas à mon besoin.
Dans un dialogue, je récupère une date avec un contrôle date déroulant.
Jusqu'à maintenant je savais gérer avec CDateFromISO pour ma macro en LO 3.6
Avec LO 4.1.5 ca ne fonctionne plus, confirmé par les infos de Dude.
Comment je fais maintenant, pour traiter cette date avec les différents formats
dont j'ai besoin.
Désolé d'insister, mais l'exemple donné dans : https://forum.openoffice.org/fr/forum/v ... =8&t=41236
ne m'a pas été très utile car certains éléments me sont incompréhensibles. Je suis juste un débutant averti.
Merci de votre patience
Dans un dialogue, je récupère une date avec un contrôle date déroulant.
Jusqu'à maintenant je savais gérer avec CDateFromISO pour ma macro en LO 3.6
Avec LO 4.1.5 ca ne fonctionne plus, confirmé par les infos de Dude.
Comment je fais maintenant, pour traiter cette date avec les différents formats
dont j'ai besoin.
Désolé d'insister, mais l'exemple donné dans : https://forum.openoffice.org/fr/forum/v ... =8&t=41236
ne m'a pas été très utile car certains éléments me sont incompréhensibles. Je suis juste un débutant averti.
Merci de votre patience
LibreOffice 25.2 sous Ubuntu 22.04 LTS
LibreOffice Version: 25.2.5.2 sous W7 64b SP1
LibreOffice Version: 25.2.5.2 sous W7 64b SP1
-
luky-luke
- InconditiOOnnel

- Messages : 957
- Inscription : 27 nov. 2010 00:17
- Localisation : gâtine deux-sèvrienne
Re: [Calc] Différence de comportement des dates.
Bonjour
La propriété Date du champs DateField Avec LibO 4.xxx n'est pas au format ISO. Donc Le CDateFromISO provoque une erreur.
Le contrôle au format numérique va permettre au code de fonctionner indifféremment avec AOO ou LibO. C'est un peu lourd, mais cela à le mérite de fonctionner...... J'espère
Cordialement
Luke
La propriété Date du champs DateField Avec LibO 4.xxx n'est pas au format ISO. Donc Le CDateFromISO provoque une erreur.
Il te suffit d'assembler ces éléments :stefalci a écrit :Les seuls résultats que j'obtienne sont les arguments séparés JJ, MM, AAAA
Code : Tout sélectionner
Sub demanderDate()
Dim dlg As Object
Dim champDate As Variant, dateISO as Variant, laDate As Date
Dim a As Integer, m As Integer, j As Integer
Dim Jour As Long, Mois As Long, Annee As Long
dlg = CreerDialogue("Standard", "Dialog1")
if dlg.execute = com.sun.star.ui.dialogs.ExecutableDialogResults.OK then
champDate = dlg.getControl("DateField1")
dateISO = champDate.Date
if IsNumeric(dateISO) Then
laDate = CDateFromISO(dateISO)
Else 'pour LibO 4.xxx
Jour = dateISO.Day
Mois = dateISO.Month
Annee = dateISO.Year
laDate = Jour & "/" & Mois & "/" & Annee
End if
print laDate
end if
dlg.dispose
End SubCordialement
Luke
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 7.4.7.2 Raspberry pi (Trixie) et Libo 7.6.5.2 LinuxMint 22
Xray ne tient pas lieu de tout, mais une pratique sans Xray ne vaut pas grand chose
Xray ne tient pas lieu de tout, mais une pratique sans Xray ne vaut pas grand chose
-
Piaf
- GourOOu

- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Calc] Différence de comportement des dates.
Bonjour
Pas forcement tout compris.
A+
Pas forcement tout compris.
A tester donc sous les dernières versions de LibO.stefalci a écrit :je ne vois pas comment faire pour récupérer la date en entier
et au format (jj/MMMM/AAAA).
Code : Tout sélectionner
Sub OuvrirDialog
Dim bibli As Object, monDialogue As Object, oDlg as Object
DialogLibraries.LoadLibrary("Standard")
bibli = DialogLibraries.GetByName("Standard")
monDialogue = bibli.GetByName("Dialog1")
oDlg = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
oDlg.Execute
End Sub
Sub AfficherDate(oEV As Object)
Dim dlg As Object
Dim monCtrl As Object, MaDate As Object
dlg = oEv.Source.Context
monCtrl = dlg.getControl("DateField1")
MaDate = monCtrl.Date
MsgBox("La date formatée : " & Format(CDateFromUnoDate(MaDate),"dd/mmmm/yyyy"))
End SubVous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
luky-luke
- InconditiOOnnel

- Messages : 957
- Inscription : 27 nov. 2010 00:17
- Localisation : gâtine deux-sèvrienne
Re: [Calc] Différence de comportement des dates.
Bonsoir
Pour compléter la réponse et avoir un code qui fonctionne avec LibO et AOO version 3.xxx ou 4.xxx, avec la date au format que l'on souhaite (merci Piaf pour la piqûre de rappel)
Cordialement
Luke
Pour compléter la réponse et avoir un code qui fonctionne avec LibO et AOO version 3.xxx ou 4.xxx, avec la date au format que l'on souhaite (merci Piaf pour la piqûre de rappel)
Code : Tout sélectionner
Option Explicit
Sub FormatDate
Dim oNDlg As Object
Dim champDate As Object, Madate as Variant, laDate As Date
Dim Jour As Long, Mois As Long, Annee As Long
oNDlg = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
if oNDlg.execute = com.sun.star.ui.dialogs.ExecutableDialogResults.OK then
champDate = oNDlg.getControl("DateField1")
Madate = champDate.Date
if IsNumeric(Madate) Then
laDate = CDateFromISO(Madate)
Else
Jour = Madate.Day
Mois = Madate.Month
Annee = Madate.Year
laDate = Jour & "/" & Mois & "/" & Annee
End if
print Format(laDate,"dd/mmmm/yyyy")
print Format(laDate,"dddd dd mmmm yyyy")
end if
oNDlg.dispose
End SubLuke
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 7.4.7.2 Raspberry pi (Trixie) et Libo 7.6.5.2 LinuxMint 22
Xray ne tient pas lieu de tout, mais une pratique sans Xray ne vaut pas grand chose
Xray ne tient pas lieu de tout, mais une pratique sans Xray ne vaut pas grand chose
-
Dude
- IdOOle de la suite

- Messages : 26195
- Inscription : 03 mars 2006 07:45
- Localisation : 127.0.0.1
Re: [Calc] Différence de comportement des dates.
Rappelons quand même que CDateFromISO a un comportement aléatoire qui peut retourner une erreur si présence de séparateur.
Voir ticket 109652
Voir ticket 109652
-
Churay
- ManitOOu

- Messages : 2668
- Inscription : 30 avr. 2009 04:54
- Localisation : CATALUNYA
Re: [Calc] Différence de comportement des dates.
Yeap
Ce qui me rappelle
Dans les deux cas, il faut (depuis quelques temps), pousser la plaisanterie jusqu'au test de la version... et coder en conséquence...
On se fait à tout...
Ce qui me rappelle
A l'époque je pensais tester si on est sous AOO | LO...Churay, le 18 Juil 2012 19:48, a écrit :Bonsoir
Personnellement, ce qui me gêne :
- le rythme soutenu des sorties de LO même si j'en comprends la démarche. Pour des raisons de cuisine interne, je n'ai pas opté pour la solution la plus simple des mises-à jour.
- à chaque mise à jour, les surprises inévitables
- la divergence des API : pour coder une macro même simple, il faudra tôt ou tard commencer à déterminer où on a atteri et prévoir le code en conséquence si on veut qu'elle passe un peu partout (ou prévoir de dire qu'elle fonctionne pas nécessairement sur telle ou telle suite : original isn't..)
- l'éventuelle nouvelle interface héritée de Symphony qui ne me plait pas
Dans les deux cas, il faut (depuis quelques temps), pousser la plaisanterie jusqu'au test de la version... et coder en conséquence...
On se fait à tout...
cOOordialement
---
AOO 4.0.1 W7-PRO & LO 5.1.6.2 Debian 7.8 & Ubuntu 16.04 LTS
---
F1 : ça aide...
XRay + SDK
---
Quand le NOT CONFIRMED sera corrigé (OOo et LO) , je serai heureux...
---
AOO 4.0.1 W7-PRO & LO 5.1.6.2 Debian 7.8 & Ubuntu 16.04 LTS
---
F1 : ça aide...
XRay + SDK
---
Quand le NOT CONFIRMED sera corrigé (OOo et LO) , je serai heureux...
-
stefalci
- Membre OOrganisé

- Messages : 70
- Inscription : 17 déc. 2007 18:23
- Localisation : Fontaine les dijon
Re: [Résolu][Calc] Différence de comportement des dates.
Tout d'abord merci à Dude, Churay, Piaf et luky-luke de leur réactivité.
Je vais tester dans la journée. Je garderai tout de même le test de version par rapport aux remarques de Dude sur
le CDateFromISO. Et si problème, j'en ai déjà la cause et la solution.
Je confirme ça marche à merveille, et en plus je peux l'utiliser qq soit la version de LO.
Encore merci aux contributeurs
Cordialement
Je vais tester dans la journée. Je garderai tout de même le test de version par rapport aux remarques de Dude sur
le CDateFromISO. Et si problème, j'en ai déjà la cause et la solution.
Je confirme ça marche à merveille, et en plus je peux l'utiliser qq soit la version de LO.
Encore merci aux contributeurs
Cordialement
LibreOffice 25.2 sous Ubuntu 22.04 LTS
LibreOffice Version: 25.2.5.2 sous W7 64b SP1
LibreOffice Version: 25.2.5.2 sous W7 64b SP1