macro excel enregistrer xls en csv avec separateur

smail67

XLDnaute Nouveau
Bonjour à tous,


Pourriez-vous m'aider s'il vous plait.
Je souhaiterai enregistrer un fichier Calc(open office) à l'aide d'une macro Excel. Mon fichier devra etre sauvegardé en .csv avec séparateur. L'enregistrement souhaité est le suivant :
type : texte CSV(.csv)
jeu de caractères : unicode (UTF-8)
Séparateur de champs : ^
Séparateur de texte :
Je tourne sur windows xp, avec excel version 2007.
J'ai réalisé le code suivant qui ouvre mon fichier excel, copie la zone désirée, ouvre l'application Calc. Ces étapes fonctionne mais l'étape du collage dans l'application Calc ne s'effectue pas. L'enregistrement quant à lui n'est pas traité.

Sub liste2()


Workbooks.Open Filename:="C:\Documents and Settings\omari67\Mes documents\FRAGRANCEX\liste parfum 19 mai 2010"
If Not Cells(501, 1).Value = "" Then
Range("a1:M500").Select
Selection.Delete Shift:=xlToLeft
Range("a1001:M7000").Select
Selection.Delete Shift:=xlToLeft
Range("A501:M1000").Select
Selection.Cut
Shell """C:\Program Files\OpenOffice.org 3\program\scalc.exe"""
Range("a1").Select
ActiveSheet.Paste
Application.DisplayAlerts = False

'il faudrait ici l'enregistrement en .csv avec les séparateurs qui vont bien

Application.DisplayAlerts = True

End If

Merci d'avance pour vos contributions.
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : macro excel enregistrer xls en csv avec separateur

Re,

je viens de voir ton édition... regade le code ci-dessous si il peut t'aider :

Code:
ActiveWorkbook.SaveAs "C:\MesDocs\Excel\NomFichier", xlCSVWindows, , , , , , , , , , True

@+
 

smail67

XLDnaute Nouveau
Re : macro excel enregistrer xls en csv avec separateur

Bonjour Pierrot,

Merci pour ta participation, J'ai testé le code mais le résultat n'est pas celui que je cherche. Peut-être aussi que je n'ai pas cerné ta stratégie. Dans la suite de virgule que tu mets dans ton code j'ai regardé si il y'avait les paramètres qui m'interressent (UTF8, Séparateur de champs : ^) mais aucun paramètres ne semble faire ça.
C'est pour ça que dans mon code(voir ci-dessus) je me suis orienté dans l'ouverture d'un fichier Calc (Open office) pour ensuite gérer à partir de la même macro excel l'enregistrement désiré.(jeu de caractères : unicode UTF-8, Séparateur de champs : ^)C'est cette deuxième partie du code qui n'est pas traité.
Merci d'avance pour vos investissements.
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : macro excel enregistrer xls en csv avec separateur

Bonjour,

A priori, je ne vois pas de propriété "fileformat" dans vba pouvant être utilisé pour arriver à tes fins... maintenant je ne connais pas du tout l'appli "calc", peut être quelqu'un d'autre aura une solution...

Regarde peut être chez nos amis de VeriTi, ils ont un forum dédié à OOo...
www.veriti.fr • Voir le forum - OOo

bonne journée
@+
 

Discussions similaires

Statistiques des forums

Discussions
312 490
Messages
2 088 875
Membres
103 980
dernier inscrit
grandmasterflash38