4/5 (12 avis)
Vue 12 856 fois - Téléchargée 813 fois
Option Explicit '---------------------------------------------------------- ' / ' ^ ^ / ' | | <-----> | | ^ ' | | | |\ /| | ' <---> | <-\/-> | ' | | | |/ | | ' | | | | | |____ ' ^ ^ / ' / ' ' Module de création de fichiers HTML ' LEVEUGLE Damien (c) 2005. ' mailto:elguevel@free.fr ' '---------------------------------------------------------- '************************* '* Creer le fichier HTML * '************************* Public Function CreateHTML(fichier As String, Optional Titre As String = "Bilan") As Integer Dim NumFichier As Integer NumFichier = FreeFile Open fichier For Output As NumFichier Print #NumFichier, "<HTML>" ' ENTETE HTML Print #NumFichier, "<HEAD>" Print #NumFichier, "<TITLE>" & Titre & "</TITLE>" ' STYLE (CSS) Print #NumFichier, "<STYLE type=""text/css"">" Print #NumFichier, "td { font: 12px Verdana, Arial, Helvetica, sans-serif; color: #000000; border-top: 1px none #666666; border-right: 1px none #666666; border-bottom: 1px inset #666666; border-left: 1px none #666666; }" Print #NumFichier, ".First { color: #000000; background: #00CC66; border: #333333; text-align: center; }" Print #NumFichier, ".Normal{ color: #000000; background: #CCCCCC; }" Print #NumFichier, "h1 { font-size: 24px; font-weight: bold; }" Print #NumFichier, "h2 { font-family: Arial, Helvetica, sans-serif; font-size: 36px; text-align: center; }" Print #NumFichier, "</STYLE>" Print #NumFichier, "</HEAD>" ' BODY Print #NumFichier, "<BODY>" CreateHTML = NumFichier End Function '******************** '* Creer un tableau * '******************** Public Sub CreateTableau(ID As Integer, entete As String, Optional NombreColonne As Integer = 1) Print #ID, "<TABLE border=""1"">" Print #ID, "<TR class=""First""><TD colspan=""" & CStr(NombreColonne) & """ >" & entete & "</TD></TR>" End Sub '******************************** '* Ajouter un titre sur la page * '******************************** Public Sub AddTitle(ID As Integer, Titre As String, Optional TitreDePage As Boolean = False) If TitreDePage = False Then Print #ID, "<p><h1>" & Titre & "</h1></p>" Else Print #ID, "<p><h2>" & Titre & "</h2></p>" End If End Sub '******************************** '* Ajouter un titre sur la page * '******************************** Public Sub AddComment(ID As Integer, Commentaire As String) Print #ID, "<br><p>" & Commentaire & "</p><br>" End Sub '************************************* '* Ajoute des lignes dans un tableau * '************************************* Public Sub AddLine(ID As Integer, FirstColor As Boolean, ParamArray StructLigne() As Variant) Dim X As Integer Print #ID, "<TR>" For X = 0 To UBound(StructLigne) If (X = 0) And (FirstColor = True) Then Print #ID, vbTab & "<TD Class = "" & First & "">" & CStr(StructLigne(X)) & "</TD>" Else Print #ID, vbTab & "<TD Class = "" & Normal & "">" & CStr(StructLigne(X)) & "</TD>" End If Next Print #ID, "</TR>" End Sub '******************** '* Ferme le tableau * '******************** Public Sub CloseTableau(ID As Integer) Print #ID, "</TABLE>" Print #ID, "<BR><BR>" End Sub '************************* '* Ferme le fichier HTML * '************************* Public Sub CloseHTML(ID As Integer) Print #ID, "</BODY>" Print #ID, "</HTML>" Close #ID End Sub
12 sept. 2007 à 21:59
27 nov. 2006 à 13:09
En fait, depuis que je cherche une source (euh... hier donc...) je m'attendais à quelque chose dans le style, car avant tout, le HTML n'est que du texte brut dont on change l'extension =P
Mon but ici est d'obtenir une page xHTML aux normes W3C, sur laquelle des données sont déjà présentes, mais où il faut en rajouter à certains endroits. Et c'est là que les textboxes interviennent.
On pourrait également imaginer un design complet en xHTML + CSS, que l'on couplerait à ton programme. De cette façon, le parfait débutant en HTML obtiendrait son site super rapidement sans devoir toucher une seule seconde au code...
27 nov. 2006 à 11:46
Sinon oui ce code est d'une banalité extraordinaire, çà m'etonne même qu'il soit si apprécié. Car c'est même pas optimisé, et je n'ai pas developpé toutes les fonctions possible pour la création de pages HTML plus complexes.
En tout cas le principe est hyper simple, je passe des paramètres de "type string" à des fonctions qui insèrent le texte dans du code HTML et se contente au final d'ecrire tout çà dans un fichier texte ... rien de plus con.
Avec un module de classe, en complétent les balises manquantes et en rendant le code plus dyamique on peut faire quelque chose de 100 fois mieux, je t'assure.
Merci, et Bon Code !
26 nov. 2006 à 21:41
Je viens de trouver d'où venait le problème... Tu as développé ton code sous VB6, et il fallait retirer deux lignes du fichier portant l'extension VBP (Retained et Debugquelquechose)
Maintenant que j'ai quelque chose qui veut bien tourner, je peux commencer quelques tests... :)
Il y aura de grosses modifications, notamment via le remplissage de textboxes puis lors du clic sur "Créer HTML" les valeurs de ces textboxes seront ajoutées au code HTML... (Ca a l'air simple, j'espère que ce n'est pas qu'une impression...)
Encore une fois, chouette, très chouette code ;o)
26 nov. 2006 à 20:03
Je viens de télécharger ton code source (et de réinstaller VB par la même occasion vu que je vais en avoir besoin) mais quelque chose me pose problème. Lorsque je veux ouvrir ton projet, un message d'erreur m'informe que 'Retained' est une clé incorrecte et que ton projet ne peut pas être chargé. Lorsque j'ouvre la feuille et que je clique sur "Play" pour l'éxécuter, je reçois un message d'erreur me disant qu'une variable est indéfinie, et il me souligne la ligne "Identifiant = Module_html.CreateHTML(FichierHTML, "Projet pour Aurore")"
Est-ce une erreur chez moi ? VB5 est-il trop vieux pour ton projet ?
Merci de bien vouloir m'éclairer là-dessus... Ta source m'interresse énormément, je ne pense pas que je trouverai mieux ailleurs...
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.