begin process at 2010 02 10 02:21:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

Débutants

 > 

Creer un fichier Excel avec VB6


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Creer un fichier Excel avec VB6

mercredi 14 mai 2008 à 20:50:34 | Creer un fichier Excel avec VB6

Gegeleblond

Bonjour,

Je sais qu avec la commande Workbooks.Open Filename:="C:\Documents\toto.xls", j ouvre un fichier deja existant avec VB6 mais  j aimerais pouvoir creer mon propore fichier  Excel.
Savez vous comment faire?

Merci


mercredi 14 mai 2008 à 21:23:20 | Re : Creer un fichier Excel avec VB6

bigfish_le vrai

Réponse acceptée !
Salut,

Ton probleme est un probleme excel, VB6 ou les deux ?

Pour excel uniquement :

Workbooks.Add

Pour excel depuis VB6

Dim ExcelAppli As Object, NewXlFile As Object
Set ExcelAppli = CreateObject("Excel.Application")
Set
NewXlFile = ExcelAppli.Workbooks.add
NewXlFile.SaveAs Filename:="c:\temp\Momnouveaufichier", FileFormat:=xlNormal
NewXlFile.Close False
ExcelAppli.Quit
Set
NewXlFile = Nothing
Set ExcelAppli = Nothing

A+

mercredi 14 mai 2008 à 22:26:49 | Re : Creer un fichier Excel avec VB6

Gegeleblond

C est effectivement pour Excel depuis VB6. Et je dois dire que ce que tu m as dit fonctionne
Merci.

Juste une autre question a quoi sert les lignes suivantes ?
NewXlFile.Close False
ExcelAppli.Quit
Set
NewXlFile = Nothing
Set ExcelAppli = Nothing


mercredi 14 mai 2008 à 22:48:43 | Re : Creer un fichier Excel avec VB6

bigfish_le vrai

Réponse acceptée !
...

NewXlFile
.Close False 'ferme le fichier sans aucun message d'alerte meme si il n'a pas ete sauvé
ExcelAppli.Quit 'ferme excel
Set
NewXlFile = Nothing 'vide la variable objet
Set  ExcelAppli = Nothing 'vide la variable objet

pour les 2 dernieres lignes il est recommender de les avoirs en VB6, ne me demande pas pourquoi je ne suis pas un expert VB6 Par contre je te le deconseil en VBA. Le VBA n'aime pas du tout ca a tel point que la plus part du temps cela tue excel sans aucun message d'erreur.
Pas glop !

A+
mercredi 14 mai 2008 à 22:53:21 | Re : Creer un fichier Excel avec VB6

Gegeleblond

Encore une autre question :

Pour etre clair, dans mon programme, j ouvre un fichier (par exemple test.sin), ensuite je créeun fichier Excel que je rempli avec des valeurs provenant de test.sin (ce que j ai pu faire grace à ton aide) mais je souhaiterai que ce fichier Excel prenne le meme nom et le meme emplacement que test.sin à l exception pres que son extension sera .xls (test.xls).
J ai essayé d utiliser CommonDialog1.FileName pour nommer mon fichier Excel puisque CommonDialog1.FileName est le nom du fichier selectionné lorsque je demande à mon programme d ouvrir un fichier mais je n y arrive pas. J ai ecrit
NewXlFile.SaveAs FileName = CommonDialog1.FileName, FileFormat:=xlNormal mais ca ne fonctionne pas.

Pourrais tu m aider s il te plait?
mercredi 14 mai 2008 à 23:05:39 | Re : Creer un fichier Excel avec VB6

pile_poil

Membre Club
Réponse acceptée !
mets le nom de ton fichier text dans une variable
et utilise cette variable pour enregistrer ton fichier excel
un truc du genre
toto = "c:\ monprog\test.sin"
NewXlFile.SaveAs  left(toto, len(toto)-3) & "xls"


si c'est la solution, penser : REPONSE ACCEPTEE
mercredi 14 mai 2008 à 23:23:42 | Re : Creer un fichier Excel avec VB6

Gegeleblond

Euh je saisis pas trop le len(toto)-3... peux tu expliciter un peu?

En outre j ai pris test.sin comme exemple, en realite je dois etre capable de creer ce fichier excel (avec le meme nom et le meme emplacement) pour n importe quel fichier dont l extension est .sin. Or si je suis ta methode, je devrai à chaque fois revenir dans le code... C est pour ca que je tentais quelque chose avec CommonDialog1.FileName mais en vain...
mercredi 14 mai 2008 à 23:31:05 | Re : Creer un fichier Excel avec VB6

bigfish_le vrai

Réponse acceptée !
...

pour preciser un peut, CommonDialog1.FileName renvois le nom  du fichier avec son extension donc en ecrivant :

NewXlFile.SaveAs FileName = CommonDialog1.FileName, FileFormat:=xlNormal

c'est comme si tu faisais :

NewXlFile.SaveAs FileName = c:\temp\test.sin.xls

donc comme te la expliqué pile_poil il te faut extraire le nom sans l'extension .sin

NomFichier = CommonDialog1.FileName
NomFichier = Left(NomFichier, Instr(NomFichier, ".") -1)  'instr renvoi la position du point
NewXlFile.SaveAs Filename:=NomFichier,  FileFormat:=xlNormal

pile_poil :
FileFormat:=xlNormal permet d'attribuer directement l'extension par defaut d'excel (.xls) donc je propose une autre solution mais la tienne marche aussi

A+
mercredi 14 mai 2008 à 23:32:26 | Re : Creer un fichier Excel avec VB6

pile_poil

Membre Club
Réponse acceptée !
len(toto) te donne le nombre de caractères de la variable toto
donc left(toto, len(toto)-3) & "xls"  prend la partie gauche de totode toute la longeur moins trois lettres (en l'occurence sin) et ajoute "xls " donc dans l'exemple que je te donnais
"c:\ monprog\test.sin" est transformé en "c:\ monprog\test.xls"

mais tu aurais pu pour savoir ce que voulait dire "len" mettre ton curseur sur ce mot dans VB6 et appuyer sur F1  pour avoir l'aide en ligne et donc toutes les explication

en réponse à ta deuxieme question :
quel est ton code pour ouvrir ton fichier *.sin ?
si c'est la solution, penser : REPONSE ACCEPTEE
mercredi 14 mai 2008 à 23:40:58 | Re : Creer un fichier Excel avec VB6

pile_poil

Membre Club
bigfish tu as raison de le souligner !
mais pour moi il y a longtemps, et ayant appris tout seul a programmer VB6,  je ne connaissais pas fileformat et avais trouvé cette astuce  et l'habitude aidant ..... je l'ai gardée !

si c'est la solution, penser : REPONSE ACCEPTEE

1 2

Cette discussion est classée dans : fichier, creer, vb6, excel


Répondre à ce message

Sujets en rapport avec ce message

Ecrire dans un fichier excel avec VB6????? [ par faitasse ] Comment faire pour ecrire dans un fichier excel avec VB6?Merci... ouvrir fichier excel à partir vb6 [ par asairfanne ] <TD id=HB_Focus_Element vAlign=top width="100%" background="" height=250 UNSELECTAB VB6 et VBA Excel! [ par kevinscherrens ] Bonjour et merci d'avance a tous ceux ki me repondront!Je voudrai piloter un fichier Excel a partir de VB afin d'automatiser l'execution d'une mise a Excel et VB6 [ par ElectroTruite ] Bonjour à tous, je suis un simple débutant en language visual basic et j'aimerai une aide pour créer un programme. Dans ce programme j'aimerai ouvrir VB6 - Modifier l'ordre et changer le nom des feuilles d'un fichier Excel [ par pcvesoul ] Bonjour.Depuis mon programme, je crée un fichier Excel. J'ai besoin de rajouter 2 feuilles, mais le problème est que les feuilles rajoutées viennent e VB6 : Ajout d'une feuille supplémentaire dans un fichier Excel (erreur d'execution) [ par pcvesoul ] Bonjour.Depuis mon prog en VB6, je créé un fichier Excel en créant de nouvelles feuilles avec la commande suivante :      FichierExcel.Sheets.Add , Fi SOS VB - EXCEL [ par gilmerl ] salutsvp je voudrais savoir comment envoyer des données contenues dans un datagrid vers un fichier excel directement sous vb6, et ouvrir le fichier de impossible de creer fichier excel, erreur 429... [ par tototar ] bonjour,je narrive pas a creer un nouveau fichier excel, a lexecutiion jai erreur 429, lactivex ne peu pas creer lobjet...je nai pas excel sur mon pc,


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales