yanngolf
Messages postés3Date d'inscriptionjeudi 27 avril 2006StatutMembreDernière intervention19 juillet 2010
-
29 mars 2010 à 14:15
daffy17
Messages postés106Date d'inscriptionmercredi 18 mai 2005StatutMembreDernière intervention22 avril 2010
-
30 mars 2010 à 15:39
Bonjour tout le monde,
Je ne connais pas du tout VBA, c'est pour ca que je fait appel à vous.
En résumé, Voila ma mission :
Je dois réaliser un script qui permet d'ouvrir un classeur XLS et de le sauvegarder en CSV dans un répertoire.
Explication :
Le Lorsqu'on ouvre le classeur xls classeur1.xls, il va rechercher des informations dans d'autres classeurs.
Le fichier ne contient qu'une seule page.
Il faut ensuite enregistrer le classeur1.xls sous le format csv pour l'importer dans un site Web.
Scénario :
Je cherche donc à réaliser un code qui :
- Ouvre un classeur XLS qui lui va rechercher des documents dans d'autres classeurs.
- Puis enregistre ou écrase le classeur sous le format CSV dans le répertoire c:/travail/mes_classeurs_csv/.
Ce script sera donc lancé en tâche plannifiée sous windows pour que cela s'effectue chaque soir.
Questions :
- Est-ce possible ?
- Est-ce compliqué pour un débutant ?
- Je peux trouver des script rapidement ?
Merci d'avance pour votre aide ! Je dois fournir un retour mais la je suis un peur perdu
daffy17
Messages postés106Date d'inscriptionmercredi 18 mai 2005StatutMembreDernière intervention22 avril 2010 30 mars 2010 à 15:39
Bonjour yanngolf,
- Oui cela est possible.
- Pour un débutant, tout dépend du niveau du débutant.
- Oui sur ce forum je pense que tu pourras trouver beaucoup de script utile.
Je n'ai pas recherché spécialement pour toi, mais j'ai développé une application qui allait rechercher tous les fichiers excel qui m'intéressait dans un répertoire et qui les ouvraient uns par uns.
Tu auras besoin dans un premier temps de la fonction "Open", puis "SaveAs" pour ouvrir ton classeur et l'enregistrer en format CSV.
Sub convertirXLSenCSV(urlFichierExcel As String)
Dim classeurAOuvrir As Workbook
'Ouvre le classeur Excel
Set classeurAOuvrir = Workbooks.Open(urlFichierExcel)
'Enregistre le classeur au format CSV
classeurAOuvrir.SaveAs ThisWorkbook.Name, xlCSV
'Ferme le classeur
classeurAOuvrir.Close
End Sub
Tu peux ajouter un bouton parcourir sur la feuille excel qui ira chercher le chemin du fichier et le reportera dans la cellule "A1" (à modifier à ta guise).
Fonction du bouton " Parcourir "
Public Sub ouvrirFichier()
Range("A1").Value = Application.GetOpenFilename("Excel (*.xls),*.xls")
End Sub
Tu n'auras plus qu'as créer une dernière macro sur un bouton "Convertir".
Fonction du bouton "Convertir"
Public Sub btConvertirClick()
convertirXLSenCSV Range("A1").Value
End Sub