XL 2016 VBA - Range to HTML incluant les objets de la feuille (boutons, images, ...)

  • Initiateur de la discussion Initiateur de la discussion Dudu2
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Dudu2

XLDnaute Barbatruc
Bonjour,

Je n'ai rien trouvé qui fonctionne pour convertir un Range en HTML qui inclurait tout ce qu'il y a dans le Range en question.

J'ai bien récupéré la fonction de Ron de Bruin omni-présente sur le Web qui fonctionne uniquement pour les valeurs de cellules et leurs formats, sauf pour les tableaux structurés qui ne sont pas en exclusivité dans le Range qui perdent alors leurs formats (qui n'en sont pas vraiment !).
 

Pièces jointes

re
bonjour
visiblement la version 4.3 est dispos déjà me semble t il 😉
bon elle n'a pas la dernière version pour les shapes to png file mais on s'en fou le générateur html ne change pas ;il est générique compatible HTML5 et inférieur puisque c'est du DOM 1/2 et du CSS 2 max
et inline
 
Bonjour @patricktoulon,
J'ai un petit souci avec ça. Peux-tu regarder ?
1662815477999.png
 

Pièces jointes

Dernière édition:
J'ai aussi remarqué ça qui n'a peut-être pas d'effet:
HTML:
<!--[if mso]>
<v:rect style="left: 10pt; top: 2pt; width: 226.199pt; height: 153.164pt; position: absolute;" xmlns:v="urn:schemas-microsoft-com:vml" fill="true" stroke="false" ><v:fill  type="frame" src="Picture_2.png"><!--
v:fill-->
</v:fill><!--
v:rect--></v:rect>
<![endif]--><!--[if !mso]><!-- -->
<img style="left: 10pt; top: 2pt; width: 237.509pt; height: 148.986pt; position: absolute;" src="RangeToHTMLPatrick\Picture_2.png">
<!--<![endif]-->
Premier: src="Picture_2.png"
Deuxième: src="RangeToHTMLPatrick\Picture_2.png"
 
re
alors
le dossier n'est pas utilisé car il me sert dans une autre fonction dans un contexte différent

pour le src c'est normal le tag img c'est pour le fichier web et donc les image sont dans un dossier je sais pas porquoi il y a "patrick" mais bon je suppose que tu travail avec un dossier nomé comme tel
pour info ton fichier plante chez moi je sais pas ce que tu a fait dedans

et en effet la couleur n'est pas bonne dans ton fichier la non plus je ne sais pas ce que tu a fait

je teste donc avec le mien

sans image
1662817264511.png



avec image

1662817352939.png



je teste donc avec la copie de ta feuille à toi sur mon fichier

et il me replante au meme endroit avec les images

1662817717703.png



je teste au cas ou sans les images
et hop je me tape la fusion en noir
1662817895761.png



je reteste donc en fusionnant dans ma feuille ,la cellule ou il y a "X1" comme sur ta feuille
et je teste
1662818122177.png



LE VERDICT EST CLAIR
conclusion ta feuille est corrompue dans son xml

il est fort possible ( je l'ai déjà vu) que la copie de ma feuille sur ton fichier 2016 corrompe les xml et vice et versa


voila voila 😉
 
Je n'ai rien modifié dans ton fichier à part:
- Dans le Sub testOutlookwithShapesFichier() -> Set RnG = ActiveSheet.[c4:i13] au lieu de Set RnG = Feuil1.[c4:i13]
- Ajouté ma feuille qui pose problème dans ton classeur pour la faire traiter par ton bouton
1662819959554.png


Et le problème persiste:
1662820185880.png

1662820074446.png
 

Pièces jointes

En fait c'est un phénomène étrange où il suffit de repeindre la cellule du X1 avec sa couleur pour corriger le problème.

Edit: j'ai regardé toutes les propriétés de la cellule avant et après re-peinture et il n'y a aucune différence. On va laisser tomber ce cas délirant.
Avant:
1662822263189.png

Après:
1662822294793.png
 
Dernière édition:
re
En fait c'est un phénomène étrange où il suffit de repeindre la cellule du X1 avec sa couleur pour corriger le problème.

ça c'est pas une solution c'est une emplâtre sur une jambe de bois

non j'ai trouvé l'erreur !!!!!!!!!!!!!!!!!!!!!!!!!!

SALO!!! SALO!! SALO!!! tu m'a fait courrir


ta shape "fleche" contient " un caractère interdit et ça plantait tout
ta shape s'appelait
Légende:flèche vers la droite 3
tu m'étonne que le xml ou html part en sucette en lecture dans la page web 🤣🤣🤣🤣🤣

pour info
un caractère interdit dans un des attributs des éléments html quels qu'ils soient ...
et bien c'est tout le reste des attributs qui ne sont pas lus (ou à moitié )


bon du coup je t'offre avant tous la version 4.5 (en primeur encore)
qui contient la dernière mouture de la fonction shape to png file
et donc légèrement plus rapide
au moins il n'y a plus d’ambiguïté entre classeurs
ta feuille est bien restituée en page web et outlook
1662821726163.png
 

Pièces jointes

Je ne suis pas sûr que tu aies trouvé l'origine du truc. Peut-être mais...Avec ton ancien fichier
Si on retire la flèche et même l'image:
1662829109036.png

C'est la même punition:
1662829156481.png


D'ailleurs si on ne place aucun objet dans le Range (l'utilisateur de ta fonction n'est pas sensé savoir à priori si il y en a et combien), ton code plante. Il faudrait que tu protèges ce cas.
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour