apostrophe dans page html

  • Initiateur de la discussion zab
  • Date de début
Z

zab

Guest
Bonsoir le forum,
J'essaye d'adapter le fichier de gestion d'images XL_Visualisation_Images fait par Michel Xld. Il utilise une page html, ce qui ne m'est pas du tout familier.
Je voudrais me servir de ce fichier pour gérer des films. Or si le titre contient une apostrophe, l'image ne s'affiche pas dans le browser d'images.
J'ai vu qu'il existe des fonctions genre htmlentities, mais je ne comprends pas comment on s'en sert.
Quelqu'un saurait-il m'aider?
D'avance merci. zab.
 

MichelXld

XLDnaute Barbatruc
bonsoir Zab

je n'avais pas fait attention à ce point , mais tu as totalement raison

apres quelques essais , tu peux tester cette adaptation en ajoutant juste la ligne

Code:
S = Application.WorksheetFunction.Substitute(S, ''', '&#039')


ce qui donne pour la procedure d'initialisation de l'USF


Code:
Private Sub UserForm_Initialize()
Dim Fichier As String
Dim S As String, X As String, ProprietesImages As String
'necessite d'activer la reference Microsoft Scripting RunTime
Dim Fso As Scripting.FileSystemObject
Dim FileItem As Scripting.File

Chemin = ThisWorkbook.Path 'repertoire dans le quel est placé ce classeur
Fichier = Dir(Chemin & '\\*.gif') 'ciblage des images gif dans ce repertoire
FormatFich = '.gif'

'creation page html qui s'affichera dans le WebBrowser
Open ThisWorkbook.Path & '\\browserImage.html' For Output As #1
Print #1, '<HTML>'
Print #1, '<HEAD>'
Print #1, '<TITLE>' & Chemin & '</TITLE>'

Do
    S = Chemin & '\\' & Fichier
    Set Fso = CreateObject('Scripting.FileSystemObject')
    Set FileItem = Fso.GetFile(S)
    ProprietesImages = FileItem.Name & vbLf & FileItem.DateCreated _
    & vbLf & Format(FileItem.Size, '#,##0') & ' octets'
    
    S = Application.WorksheetFunction.Substitute(S, ''', '&#039')
    'creation vignette et lien hypertexte pour chaque image
    X = '<A href='' & S & ''><IMG WIDTH=70 HEIGHT=70 SRC='' & S & _
        ''ALT='' & ProprietesImages & ''></IMG></A>'
    Print #1, X
    
    ListBox1.AddItem Left(Fichier, Len(Fichier) - 4)
    Fichier = Dir
Loop Until Fichier = ''

Close #1

WebBrowser1.Navigate ThisWorkbook.Path & '\\browserImage.html'
End Sub


bonne soiree
MichelXld
 
Z

zab

Guest
bonsoir MichelXld
merci ! merci! merci! ça marche c'est super!

un tout petit détail, c'est qu'au passage de la souris sur une image (dont le titre contient une apostrophe) du browser d'images, l'info-bulle sur l'image n'est pas renseignée.

Par ailleurs, sans vouloir abuser de ta gentillesse, comment puis-je ajouter des colonnes dans la feuille 'base', et comment puis-je mettre les miniatures du browser d'images en forme rectangulaire plutôt que carrée? (mes images sont des jackettes de dvd)

merci d'avoir fait ce gestionnaire d'images, et merci de ton aide!
@+ zab.
 

MichelXld

XLDnaute Barbatruc
rebonsoir Zab

merci pour ton message

tu peux redéfinir la dimension des vignettes ( largeur et hauteur ) en modifiant les valeurs Width et Height

Code:
X = '<A href='' & S & ''><IMG WIDTH=70 HEIGHT=70 SRC='' & S & _


pour adapter l'infobulle il faut utiliser le meme principe que pour ta premiere question

Code:
ProprietesImages = Application.WorksheetFunction.Substitute(ProprietesImages, ''', '&#039')


il est possible d'ajouter des colonnes dans l'onglet 'Base' et d'ajouter des Labels dans l'USF ( actuellement Label1 à 6 )
par contre je n'aurai pas le temps de refaire intégralement le classeur pour toi ...

pour les gens qui seraient intéressés , le lien vers la Démo XL_Visualisation_Images (dansle 1er message du fil de discussion )
Lien supprimé



bonne soiree
MichelXld