Page 2 sur 2

Re: graphique dans Excel à partir de données exportées

MessagePublié: 19 Août 2003 à 13:50
par Stephane Maillard
Bonjour,Fonction d'encadrement :Public Sub Encadrement( _Plage As String, Haut As Variant, _Bas As Variant, _Gauche As Variant, _Droite As Variant, _Simple As Variant) If Haut = "" Then Haut = False If Bas = "" Then Bas = False If Gauche = "" Then Gauche = False If Droite = "" Then Droite = False If Simple = "" Then Simple = False With vExcel.Application .Range(Plage).Select If Gauche = True Then With .Selection.Borders(7) If Simple = True Then .LineStyle = 1 .Weight = 2 Else .LineStyle = -4119 .Weight = 4 End If .ColorIndex = -4105 End With End If If Droite = True Then With .Selection.Borders(10) If Simple = True Then .LineStyle = 1 .Weight = 2 Else .LineStyle = -4119 .Weight = 4 End If .ColorIndex = -4105 End With End If If Haut = True Then With .Selection.Borders(8) If Simple = True Then .LineStyle = 1 .Weight = 2 Else .LineStyle = -4119 .Weight = 4 End If .ColorIndex = -4105 End With End If If Bas = True Then With .Selection.Borders(9) If Simple = True Then .LineStyle = 1 .Weight = 2 Else .LineStyle = -4119 .Weight = 4 End If .ColorIndex = -4105 End With End If End WithEnd Sub'--Fin CodeExemple :Encadrement "C3:C14", True, True, True, True, FalseParamètres :Plage : Plage que vous voulez entrourerHaut : True ou False, True Trace un trait en Haut et False ne trace pas de traitBas : Idem que Haut mais pour le BasGauche : Idem que Haut mais pour la GaucheDroite : Idem que Haut mais pour la droiteSimple : True encadre avec un trait simple, False Encadre avec un trait Double[%sig%]

Re: graphique dans Excel à partir de données exportées

MessagePublié: 19 Août 2003 à 13:57
par Stephane Maillard
Bonjour,Exemple pour le Titre sur la routine Graphique1:Public Sub CreerGraphique1() Dim XLGraphique1 As Variant vExcel.Range("C3:C14").Select Set XLGraphique1 = vExcel .Charts.Add XLGraphique1.ApplyCustomType 21, "Courbe avec lissage" XLGraphique1.HasTitle = True '<== On lui dit d'afficher le titre XLGraphique1.ChartTitle.Characters.Text = "Mon beau dessin" '<== On lui donne le titre à afficher XLGraphique1.Location 2, NomFeuille PlaceGraphique NomFeuille, 1, "A", 15End Sub[%sig%]

Re: graphique dans Excel à partir de données exportées

MessagePublié: 19 Août 2003 à 14:40
par virginie
merci beaucoup!

exemples avec plusieur feuilles ??

MessagePublié: 20 Août 2003 à 10:02
par polo
quelqu'un aurait-il un exemple tout bete d'une export excel, générant 2 feuilles avec pour chacune d'elles des données ds leurs cellule.pass que la je galère depuis 2 heures....

Re: exemples avec plusieur feuilles ??

MessagePublié: 20 Août 2003 à 23:39
par Stephane Maillard
Bonjour,Voici la méthode pour ajouté une feuille au classeur actif :Sub CreeFichierExcel EtFeuille( ) Dim vExcel As Variant Dim vNouveauClasseur As Variant Dim iNombreFeuille As Integer Dim iCompteur As Integer iNombreFeuille = 5 '<== Nombre de feuille que l'on veux ajouter Set vExcel = createObject ("Excel.Application") vExcel.visible = True Set vNouveauClasseur = vExcel.Workbooks.Add( ) For iCompteur = 1 To iNombreFeuille ' Traitement de remplissage de la feuille en cours ' Call TraitementFeuille() Call vNouveauClasseur.Sheets.Add() '<== Insère une nouvelle feuille Next Call vNouveauClasseur.SaveAs("c:\Faux.xls") Call vExcel.Quit() Set vExcel = NothingEnd SubAttention : Ne pas oublier que les feuilles sont inséré et non mis à la fin. Donc la feuille nouvellement créée se retrouve en première position.[%sig%]

Re: encore un soucis..

MessagePublié: 21 Août 2003 à 10:36
par polo
merci pour l'info, mais j'ai trouvé un code qui marche aussi bien.J'ai encore un souci cependant, mon export excel me génère un fichier excel (ca marche), il associe ce fichier à un document Notes(ca marche ossi), mais lorsque j'applique un Kill sur ce fichier, j'ai un message d'erreur.Set vExcel = createObject ("Excel.Application")FileName="c:\fichierExcel.xls"'// création du fichier excelSet vNouveauClasseur = vExcel.Workbooks.Add( )vExcel.SheetsInNewWorkbook=2vExcel.Sheets(1).Name = "nom bidon1."vExcel.Sheets(2).Name = "nom bidon2."Call vNouveauClasseur.SaveAs(FileName)Call vExcel.Quit()'// création du NotesDocument avec le fichier en pièce jointeSet docFichier = New NotesDocument(db)docFichier.Form = "FrmFichierExtractionExcelParType"''Attachement du fichierDim rti As New NotesRichTextItem(docFichier,"Fichier")Call rti.EmbedObject (EMBED_ATTACHMENT, "", FileName) Call docFichier.save(True,False)Kill FileName <== Erreur : L'erreur n° 75est survenue : Path/file access errorj'ai regardé les droits d'accès sur ce fichier tout semble ok et en créant un document à partir du code Lotus ca marche :Open FileName For Output As iNumFichier%Print # iNumFichier%, "texte bidon"Close #iNumFichier%Kill FileName <== okQuelqu'un aurait-il une explication et un moyen de contourner ce Pb ??

Re: encore un soucis..

MessagePublié: 21 Août 2003 à 14:34
par Stephane Maillard
Bonjour,A mon avis il considère les variables pour Excel et l'attachement ne sont pas égal à Nothing le fichier doit être toujours en cours d'utilisation.[%sig%]

Re: encore un soucis..

MessagePublié: 21 Août 2003 à 14:45
par polo
en fait, il faudrait le supprimer à partir du code VB.....quelqu'un aurait-il ca sous la main ??

Re: encore un soucis..

MessagePublié: 21 Août 2003 à 15:08
par Stephane Maillard
Bonjour,VB ? Quel code VB ?[%sig%]

Re: encore un soucis..

MessagePublié: 21 Août 2003 à 16:00
par polo
Le code qui utiliserai des objets excels pour supprimer le fichier. du type :Set vExcel = createObject ("Excel.Systemfile")call vExcel.DeleteFile(FileName)en fait le Pb est que la tache excel ne disparait pas et je me retrouve avec des tas de processus excel.exe dans mes taches... ca me soule !!

Re: encore un soucis..

MessagePublié: 21 Août 2003 à 16:04
par Stephane Maillard
Re,Personnellement je ferais ceci :Call vExcel.Quit()Set vExcel = NothingSet vNouveauClasseur = NothingKill FileName[%sig%]

Re: plus de soucis.

MessagePublié: 21 Août 2003 à 16:11
par polo
CA MARCHE C COOOOOOOL !!!je te remercie !!grace à toi je passerais un super week-end !!! (.. j'en fais peut etre un peu bocoup...)