macro excel enregistrer xls en csv avec separateur

  • Initiateur de la discussion Initiateur de la discussion smail67
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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:
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

@+
 
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:
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
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour