begin process at 2008 07 21 00:31:07
1 213 530 membres
431 nouveaux aujourd'hui
14 167 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Creer un fichier Excel avec VB6 [ Divers / Débutants ] (Gegeleblond)

Creer un fichier Excel avec VB6 le 14/05/2008 20:50:34

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



Re : Creer un fichier Excel avec VB6 le 14/05/2008 21:23:20

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+


Re : Creer un fichier Excel avec VB6 le 14/05/2008 22:26:49

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



Re : Creer un fichier Excel avec VB6 le 14/05/2008 22:48:43

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+

Re : Creer un fichier Excel avec VB6 le 14/05/2008 22:53:21

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?

Re : Creer un fichier Excel avec VB6 le 14/05/2008 23:05:39

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

Re : Creer un fichier Excel avec VB6 le 14/05/2008 23:23:42

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

Re : Creer un fichier Excel avec VB6 le 14/05/2008 23:31:05

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+

Re : Creer un fichier Excel avec VB6 le 14/05/2008 23:32:26

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

Re : Creer un fichier Excel avec VB6 le 14/05/2008 23:40:58

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


[Page 1 Page 2]
Classé sous : fichier, creer, vb6, excel

Participer à cet échange

Pub



Appels d'offres

Dessins techniques
Budget : 60€
Animation Flash - Doma...
Budget : 370€
Application flash medi...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS