[Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: 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 !
ric127
Fraîchement OOthentifié
Messages : 8
Inscription : 29 oct. 2018 02:45

[Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par ric127 »

Bonjour,

J'ai besoin d'un coup de main pour convertir du code Excel en code basic de Calc
Les chemins et les noms des fichiers à convertir sont par lignes.
Ouvrir des fichiers .wks et les convertir en fichier .xlsx.
Si réussite, on inscrit "OK Fait" en regard de la ligne concernée.

Code : Tout sélectionner

    Sub Traitements()
    Dim Fichier As String
    Dim Chemin As String
    Dim Wb As Workbook
    Dim LeNom As String
    Dim x As Long
    Dim Dlig As Long
    Dim Fs As Workbook

       Application.ScreenUpdating = False
       Set Fs = ThisWorkbook
       Dlig = Fs.Worksheets("Feuil2").Cells(Rows.Count, "C").End(xlUp).Row

       With Fs.Worksheets("Feuil2")
          For x = 6 To Dlig
             If .Cells(x, "B") = "OK Fait" Or Right(.Cells(x, "D"), 3) <> "wks" Then    ' <<< Changement ICI.
                If Right(.Cells(x, "D"), 3) <> "wks" Then .Cells(x, "B") = "OK passer"  '<<< Changement ICI.
             Else
                Chemin = .Cells(x, "C")
                Fichier = Dir(Chemin & .Cells(x, "D"))

                Do While Fichier <> ""
                   Set Wb = Workbooks.Open(Chemin & Fichier)
                   LeNom = Left(Wb.Name, Len(Wb.Name) - 4)
                   LeNom = LeNom & ".xlsx"

                   Application.DisplayAlerts = False
                   Wb.SaveAs Filename:=Chemin & LeNom, FileFormat:=xlOpenXMLWorkbook, Password:="", _
                             ReadOnlyRecommended:=False, CreateBackup:=False
                   Wb.Close SaveChanges:=True
                   Application.DisplayAlerts = True

                   .Cells(x, "B") = "OK Fait"
                   Kill Chemin & .Cells(x, "D")
                   Set Wb = Nothing
                   Fichier = Dir
                Loop
             End If
          Next x
       End With
    End Sub

Merci à l'avance
ric
Dernière modification par ric127 le 30 oct. 2018 20:22, modifié 6 fois.
OpenOffice 4.1.5 --- Windows 10 pro --
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9255
Inscription : 28 août 2010 08:45

Re: Convertir macro Excel en macro Calc d'OpenOffice 4.1.5

Message par micmac »

Bonjour et bienvenue,

Cette section a des règles très précises que vous devez obligatoirement suivre pour obtenir de l'aide. C'est indiqué dans le cadre rouge en haut de la page.

Il est demandé aux auteurs de faire précéder le titre de leur question d'une balise adéquate. Ce balisage est extrêmement important car il permet d'avoir une base de connaissance optimum en cas de recherche.
Avez-vous remarqué comment étaient postées les autres questions ?

Lisez ce fil pour savoir quelle balise utiliser : https://forum.openoffice.org/fr/forum/s ... html#27295

N'oubliez pas que les termes Macro, OpenOffice ne doivent pas être employés car il sont implicites. Essayez de synthétiser au mieux ce que vous cherchez à faire.

Un titre accrocheur qui explique l'opération à réaliser (origine Excel : convertir .wks en .xlsx) vous permettra d'une part d'être aidé plus rapidement et d'autre part, d'enrichir notre base de connaissances.

Nous vous remercions de le faire dès votre prochain passage au risque de voir votre sujet verrouillé.

Merci de votre collaboration.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur Mac
ric127
Fraîchement OOthentifié
Messages : 8
Inscription : 29 oct. 2018 02:45

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par ric127 »

Bonjour,

Merci MicMac de m'aider. J'espère avoir bien adapté ma demande aux règles de forum, qui me sont nouvelles.


ric127
OpenOffice 4.1.5 --- Windows 10 pro --
Avatar de l’utilisateur
Churay
ManitOOu
ManitOOu
Messages : 2668
Inscription : 30 avr. 2009 04:54
Localisation : CATALUNYA

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par Churay »

Bonjour,
ric127 a écrit :J'ai besoin d'un coup de main pour convertir du code Excel en code basic de Calc
Les chemins et les noms des fichiers à convertir sont par lignes.
Ouvrir des fichiers .wks et les convertir en fichier .xlsx.
Si réussite, on inscrit "OK Fait" en regard de la ligne concernée.
Le fichier Excel contenant la macro serait le bienvenu, pour voir entre autres l'organisation précise de la feuille (pas envie de décoder du vb/vba/vbs)
De même un wks pour tester serait le bienvenue (on n'en a plus en stock)

Cordialement.
cOOordialement
---
AOO 4.0.1 W7-PRO & LO 5.1.6.2 Debian 7.8 & Ubuntu 16.04 LTS
---
F1 : ça aide...
XRay + SDK :super:
---
Quand le NOT CONFIRMED sera corrigé (OOo et LO) , je serai heureux...
ric127
Fraîchement OOthentifié
Messages : 8
Inscription : 29 oct. 2018 02:45

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par ric127 »

Bonjour à tous,

@Churay, merci de regarder ma demande.

Voici le fichier représentatif.
En Feuil2, il y a les chemins et les noms des fichiers.
Ce code a bien fonctionné sous Excel pour convertir les fichiers .xlr en .xlsx en lot.
Il reste des centaines de fichiers .wks qu'il faut traiter.



ric127
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 4.1.5 --- Windows 10 pro --
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16960
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par jeanmimi »

Bonjour,
ric127 a écrit :Ouvrir des fichiers .wks et les convertir en fichier .xlsx.
Est-ce que tu ne trouverais pas plutôt la solution dans les forums MicroSoft, société propriétaire de ces formats ?
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25181
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par Dude »

jeanmimi a écrit :Est-ce que tu ne trouverais pas plutôt la solution dans les forums MicroSoft, société propriétaire de ces formats ?
Ca va me sembler difficile...
WKS est l'extension des feuilles de calcul de l'intégré MS-Works
Ce format de document a été abandonné par Microsoft en 2009.
Il n'en assure même plus les filtres d'importation dans sa propre suite MS-Office.

OpenOffice ne sait de toute façon pas exporter au format XLSX :
http://oooforum.free.fr/index.php/2013/ ... xlsx-pptx/
Avatar de l’utilisateur
jeanmimi
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 16960
Inscription : 03 mars 2006 16:02
Localisation : Venise verte

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par jeanmimi »

Dude a écrit :Ce format de document a été abandonné par Microsoft en 2009.
Il n'en assure même plus les filtres d'importation dans sa propre suite MS-Office.
Deux demandes le même jour, à quelques minutes, et dans les deux cas, ça me semble plié.
LibreOffice : Version : 24.2 (x64)(12 avril 2024)
Adoptium JRE ou Oracle JRE (x64), Windows 10, Thunderbird, Firefox
ric127
Fraîchement OOthentifié
Messages : 8
Inscription : 29 oct. 2018 02:45

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par ric127 »

Bonjour à tous,

Je vous remercie de m'avoir lu.

Désolé de vous avoir importuné avec ma demande d'aide ... que ne semble pas trouver une oreille attentive.



ric127
OpenOffice 4.1.5 --- Windows 10 pro --
chprieur
Fraîchement OOthentifié
Messages : 8
Inscription : 28 oct. 2018 15:32

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par chprieur »

Bonjour

Je suis le propriétaire des fichiers wks qui posent soucis. Je viens d'essayer et OO n'ouvre pas ces fichiers :-(

Peut être qu'il serait plus "simple" de convertir ces fichiers wks en fichiers pdf ???

Exemple de fichier wks (en zip) joint.

Merci ;-)
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 4.1.5 windows10
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par OOotremer971 »

Bonjour,

Pour info, LibreOffice sait les ouvrir et les convertir :
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
ric127
Fraîchement OOthentifié
Messages : 8
Inscription : 29 oct. 2018 02:45

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par ric127 »

Bonjour à tous.

@OOotremer971 > oui, la conversion manuelle fonctionne à merveille.

Mais la conversion en lot pour de tonnes de fichiers ............. c'est là la question. :fou:


Merci de me lire


ric127
OpenOffice 4.1.5 --- Windows 10 pro --
chprieur
Fraîchement OOthentifié
Messages : 8
Inscription : 28 oct. 2018 15:32

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par chprieur »

OOotremer971 a écrit :Bonjour,

Pour info, LibreOffice sait les ouvrir et les convertir :

C'est déjà un grand pas en avant. LibreOffice peut ouvrir et convertir les fichiers .wks. Alors comment traiter quelques milliers de fichiers sans les ouvrir un par un pour les convertir soit en pdf soit en xlsx ?
OpenOffice 4.1.5 windows10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25181
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par Dude »

OOotremer971 a écrit :Pour info, LibreOffice sait les ouvrir et les convertir
Effectivement car LibO se sert de la bibliothèque libwps dont la licence est incompatible avec AOO.
chprieur a écrit :traiter quelques milliers de fichiers sans les ouvrir un par un pour les convertir
Pour de tels volumes, la demande sort effectivement du cadre d'une suite bureautique.
Le mieux est un batch ou un script attaquant directement libwps en mode console/ligne de commande.
Exemple avec cette page web qui permet la conversion WKS > ODS : http://libwps.sourceforge.net/convertWPS.html
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par OOotremer971 »

Bonjour,

A tester (avec LO):

Code : Tout sélectionner

Option Explicit

Sub Main

Dim f As Object, oCurseur As Object, cel1 As Object, cel2 As Object, Cel3 As Object
Dim chemin as String, dl As long, x As Long
f = Thiscomponent.CurrentController.ActiveSheet
oCurseur = f.createCursor  
oCurseur.gotoEndOfUsedArea(False) 
dl = oCurseur.RangeAddress.EndRow
For x = 3 To dl
	cel1 = f.GetCellByPosition(1,x)
	cel2 = f.GetCellByPosition(2,x)  
	cel3 = f.GetCellByPosition(3,x)
	If cel1.string = "" Then
		chemin = cel2.String & cel3.String
		if ConvertirDoc(chemin) = True Then
			cel1.SetString("OK Fait")
		else
			cel1.SetString("Echec")
		end if
	end if
next
End Sub

Function ConvertirDoc(chemin As String)
Dim oDoc As Object, oDoc2 As Object
Dim adresseDoc As String, adresseDoc2() As String
Dim propFich(0) As New com.sun.star.beans.PropertyValue
Dim props(0) As New com.sun.star.beans.PropertyValue
propFich(0).Name = "Hidden"
propFich(0).Value = True
props(0).Name = "FilterName"
props(0).Value = "Calc MS Excel 2007 XML"
adresseDoc = ConvertToURL(chemin)
if FileExists(adresseDoc) = False Then 
	ConvertirDoc = False
	exit Function
End if
oDoc = StarDesktop.loadComponentFromURL(adresseDoc, "_blank", 0, propFich())
adresseDoc2() = split(adresseDoc, ".")
oDoc.storeToURL(adresseDoc2(0) & ".xlsx", props())
on Error Resume Next
oDoc.close(True)
On Error GoTo 0
if FileExists(adresseDoc2(0) & ".xlsx") = True Then 
	ConvertirDoc = True
end if
End Function
Je n'ai pas eu le temps de tester sous Windows mais je ne vois aucune raison objective pour que ça ne fonctionne pas.

Si la colonne B contient une information, la conversion n'est pas effectuée et on passe à la ligne suivante.
Si la colonne B est vide et que le fichier à ouvrir n’existe pas, la colonne B prend la valeur "Echec"
Si la colonne B est vide, que le fichier à ouvrir existe et que la conversion est réussie (test de l'existence du fichier converti) la colonne B prend la valeur "OK Fait"

Les fichiers convertis sont stockés dans le même répertoire que ceux à convertir.
Après conversion, les fichiers d'origine ne sont pas détruits (mais on pourrait le faire)

A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
ric127
Fraîchement OOthentifié
Messages : 8
Inscription : 29 oct. 2018 02:45

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par ric127 »

Bonjour à tous

@OOotremer971 :super:

Ça converti bien les fichiers.
Il tique un peu sur les fichiers autres que wks ... mais en épurant la liste à traiter avant de lancer le code ... c'est un charme.

Merci .... merci énormément.


ric127
OpenOffice 4.1.5 --- Windows 10 pro --
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9255
Inscription : 28 août 2010 08:45

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par micmac »

Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Calc]origine Excel : convertir .wks en .xlsx

Message par OOotremer971 »

ric127 a écrit :Il tique un peu sur les fichiers autres que wks ...
remplace la Sub main par celle-ci :

Code : Tout sélectionner

Sub Main
Dim f As Object, oCurseur As Object, cel1 As Object, cel2 As Object, Cel3 As Object
Dim chemin as String, testExtension() As String, dl As long, x As Long
f = Thiscomponent.CurrentController.ActiveSheet
oCurseur = f.createCursor  
oCurseur.gotoEndOfUsedArea(False) 
dl = oCurseur.RangeAddress.EndRow
For x = 3 To dl
	cel1 = f.GetCellByPosition(1,x)
	cel2 = f.GetCellByPosition(2,x)  
	cel3 = f.GetCellByPosition(3,x)
	testExtension() = split(cel3.string, ".")
	If cel1.string = "" Then
		if testExtension(1) = "wks" Then
			chemin = cel2.String & cel3.String
			if ConvertirDoc(chemin) = True Then
				cel1.SetString("OK Fait")
			else
				cel1.SetString("Echec")
			end if
		end if
	end if
next
End Sub
celle-ci teste l'existence de l'extension wks colonne C. Si elle n'est pas trouvée, la fonction ConvertirDoc n'est pas appelée, la cellule B reste vide et on passe à la ligne suivante.

A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
ric127
Fraîchement OOthentifié
Messages : 8
Inscription : 29 oct. 2018 02:45

[Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par ric127 »

Bonjour,

Impeccable.

Merci doublement, car j'ai maintenant aussi une petite base du langage de LO qui ne semble pas si loin de Vba ... je pourrais adapter à d'autres besoins.



ric127
OpenOffice 4.1.5 --- Windows 10 pro --
chprieur
Fraîchement OOthentifié
Messages : 8
Inscription : 28 oct. 2018 15:32

Re: [Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par chprieur »

Un grand merci pour votre aide :super: :super:
Je suis en train de traiter mes fichiers grâce à vous et c'est presque terminé. Le programme plante de temps en temps. Il suffit que je supprime le fichier sur lequel il plante et je relance la machine et ça fonctionne.

J'y suis depuis environ 20H30 et mes quelques 8500 fichiers seront bientôt tous traités.

MERCI a tous pour votre aide.

:bravo: :super: :bravo:
OpenOffice 4.1.5 windows10
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par OOotremer971 »

Merci pour vos remerciements :D
chprieur a écrit :Le programme plante de temps en temps.
A temps perdu, si c’était possible de trouver l'origine de ces plantages, cela permettrait d'améliorer le code.
J'entends par trouver l'origine de ces plantages, trouver une cause facilement identifiable tel qu'un chemin erroné, un fichier corrompu qui refuse de s'ouvrir même manuellement ou je ne sais quoi d'autre qui m'échappe.

Après, si la cause n'est ni flagrante ni identifiable simplement par déduction logique, ils se peut simplement que l'origine du plantage soit une saturation mémoire à cause de listes trop longues qu'il vaudrait mieux découper en plusieurs petites séries :idea:

Je dis ça pour essayer de trouver des pistes car je n'ai pas d’éléments probants susceptibles de m'aiguiller.

A+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
chprieur
Fraîchement OOthentifié
Messages : 8
Inscription : 28 oct. 2018 15:32

Re: [Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par chprieur »

Je penche davantage vers des fichiers "corrompus". Il a eu des series courtes ( une cinquantaine de fichiers) avant plantage et des séries très longues avant plantage (2500 fichiers environ).

J'ai isolé les fichiers planteurs. Je m'en occupe demain sur mon PC du boulot.

L'un de ces fichiers s'appelait xxx.yyy.wks Peut être que le "." entre le xxx et le yyy y était pour quelque chose ???

D'autres n'vaient rien de particulier dans le nom.


En gros 13 fichiers wks ont fait planter la machine.

Je peux les ziper et te les envoyer par mail si tu veux.
OpenOffice 4.1.5 windows10
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par OOotremer971 »

Ok merci.
chprieur a écrit :L'un de ces fichiers s'appelait xxx.yyy.wks Peut être que le "." entre le xxx et le yyy y était pour quelque chose ???
Complètement. J'ai hésité un moment avant d'écarter l'hypothèse que le nom du fichier pouvait contenir plusieurs points. J'ai vais donc en tenir compte.
chprieur a écrit :En gros 13 fichiers wks ont fait planter la machine.
Je peux les ziper et te les envoyer par mail si tu veux.
Ok je veux bien.

A+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
chprieur
Fraîchement OOthentifié
Messages : 8
Inscription : 28 oct. 2018 15:32

Re: [Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par chprieur »

Bonjour

Je viens de t'envoyer les fichiers qui ont planté la conversion par mail. Regarde éventuellement dans les spams (envoyé avec mon adresse contact....svl-nevers...fr)

Et je viens de regarder ces fichiers avec works.exe

Pour deux d'entre eux, un problème sur le nom (avec un"." dans le nom de fichier; j'ai modifié hier soir le nom du fichier LANA.CRESSAN en LANA-CRESSAN => tu as le second.Mais il y avait bien un "." lors du triatement) et en fait, les autres sont vides...il n'y a rien dans le fichier.
OpenOffice 4.1.5 windows10
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par OOotremer971 »

Bonjour et merci pour ton retour.
chprieur a écrit :Je viens de t'envoyer les fichiers qui ont planté la conversion
Effectivement deux d'entre eux contiennent plusieurs points dans le nom du fichier et les autres sont vides (0 octet).

En conséquence le dernier code prend en compte ces derniers points et ne devrait plus planter (sauf si le fichier à ouvrir est corrompu et qu'il demande un filtre à l'ouverture):

1) les multipoints dans les noms des fichiers sont gérés
2) le poids du fichier est testé. Égal à zéro retourne "Fichier vide" colonne B
3) Chemin erroné et/ou fichier inexistant retourne "Inconnu" colonne B
4) Extension incorrecte retourne "Bad Ext"
5) Conversion non réussie retourne "Echec"
6) Conversion réussie retourne "OK Fait"
7) Le nom des fichiers convertis conserve l'ancienne extension suivie de la nouvelle (xxxxxx.wks.xlsx)

Code : Tout sélectionner

Option Explicit

    Sub Main
    Dim f As Object, oCurseur As Object, cel1 As Object, cel2 As Object, Cel3 As Object
    Dim url as String, testExtension() As String, dl As long, x As Long, poidsFich As Long
    f = Thiscomponent.CurrentController.ActiveSheet
    oCurseur = f.createCursor 
    oCurseur.gotoEndOfUsedArea(False)
    dl = oCurseur.RangeAddress.EndRow
    For x = 3 To dl
       cel1 = f.GetCellByPosition(1,x)
       cel2 = f.GetCellByPosition(2,x) 
       cel3 = f.GetCellByPosition(3,x)
       testExtension() = split(cel3.string, ".")
       If cel1.string = "" Then
          if testExtension(Ubound(testExtension)) = "wks" Then
             url = ConvertToURL(cel2.String & cel3.String)
             If FileExists(url) Then
                poidsFich = FileLen(url)
                if poidsFich > 0 Then
                   if ConvertirDoc(url) = True Then
                      cel1.SetString("OK Fait")
                   else
                      cel1.SetString("Echec")
                   end if
                else
                   cel1.SetString("Fichier vide")
                end if
             else
                cel1.SetString("Iconnu")   
             end if
          else
             cel1.SetString("Bad Ext")   
          end if
       end if
    next
    End Sub

    Function ConvertirDoc(chemin As String)As Boolean
    Dim oDoc As Object
    Dim propFich(0) As New com.sun.star.beans.PropertyValue
    Dim props(0) As New com.sun.star.beans.PropertyValue
    propFich(0).Name = "Hidden"
    propFich(0).Value = True
    props(0).Name = "FilterName"
    props(0).Value = "Calc MS Excel 2007 XML"
    oDoc = StarDesktop.loadComponentFromURL(chemin, "_blank", 0, propFich())
    oDoc.storeToURL(chemin & ".xlsx", props())
    on Error Resume Next
    oDoc.close(True)
    On Error GoTo 0
    if FileExists(chemin & ".xlsx") = True Then
       ConvertirDoc = True
    else
       ConvertirDoc = False
    end if
    End Function
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par OOotremer971 le 01 nov. 2018 23:03, modifié 1 fois.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
chprieur
Fraîchement OOthentifié
Messages : 8
Inscription : 28 oct. 2018 15:32

Re: [Résolu] [Calc]origine Excel : convertir .wks en .xlsx

Message par chprieur »

:super:

Et pour être hyper complet, il manque la macro qui sert à lister les fichiers à traiter, en mettant le chemin à partir de C4 et le nom des fihciers à partir de D4. (voir ici : h**ps://forum.excel-pratique.com/viewtopic.php?f=24&t=115628 pour une solution)

Perso, je n'en ai plus besoin puisque mes fichiers sont déjà traités ;-)
Dernière modification par Oukcha le 31 oct. 2018 16:54, modifié 1 fois.
Raison : url externe neutralisée
OpenOffice 4.1.5 windows10