Problème avec filtre lors d'une conversion excel en html
Fermé
Bonjour,
Je suis en train de convertir une feuille Excel en HTML via une macro. Ceci fonctionne comme je le souhaite. J'ai la bonne mise en forme, les bonnes valeurs... Je dispose sur ma page de plusieurs tableaux avec un nombre de ligne prédéfinie que ne rempli pas forcément toute. Pour ce faire j'utilise un filtre qui me permet sur Excel d'afficher seulement les lignes remplies des différents tableaux.
C'est là que je ne comprend pas pourquoi lorsque j'applique la même macro pour la conversion en HTML, le contenu de ma page Excel filtré n'apparait plus... Quelqu'un à t-il une idée?
Merci pour attention
Je suis en train de convertir une feuille Excel en HTML via une macro. Ceci fonctionne comme je le souhaite. J'ai la bonne mise en forme, les bonnes valeurs... Je dispose sur ma page de plusieurs tableaux avec un nombre de ligne prédéfinie que ne rempli pas forcément toute. Pour ce faire j'utilise un filtre qui me permet sur Excel d'afficher seulement les lignes remplies des différents tableaux.
C'est là que je ne comprend pas pourquoi lorsque j'applique la même macro pour la conversion en HTML, le contenu de ma page Excel filtré n'apparait plus... Quelqu'un à t-il une idée?
Merci pour attention
A voir également:
- Problème avec filtre lors d'une conversion excel en html
- Photo filtre 7 gratuit - Télécharger - Retouche d'image
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Mise en forme conditionnelle excel - Guide
- Calculer une moyenne sur excel - Guide
2 réponses
jordane45
Messages postés
38459
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 avril 2025
4 740
22 nov. 2016 à 15:32
22 nov. 2016 à 15:32
Bonjour,
Ta question semble plus relever d'un souci de macro (VBA) que d'un problème HTML.
Je déplace donc ta question dans le forum VBA.
Quoi qu'il en soit.... si tu veux obtenir de l'aide... tu devras commencer par montrer le code en question. ( En utilisant les BALISES DE CODE du forum )
Ta question semble plus relever d'un souci de macro (VBA) que d'un problème HTML.
Je déplace donc ta question dans le forum VBA.
Quoi qu'il en soit.... si tu veux obtenir de l'aide... tu devras commencer par montrer le code en question. ( En utilisant les BALISES DE CODE du forum )
Ok merci du conseil.
Pour le coup voici le code en question :
J'ai donc fait un test ligne 11 pour voir si cela changer quelque chose mais rien j'ai encore une page blanche....
Merci pour votre aide =)
Pour le coup voici le code en question :
Sub Mail_Sheet_Outlook_Body() Dim rng As Range Dim OutApp As Object Dim OutMail As Object With Application .EnableEvents = False .ScreenUpdating = False End With Set rng = Nothing 'Set rng = Selection.SpecialCells(xlCellTypeVisible) Set rng = ActiveSheet.UsedRange Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0) On Error Resume Next With OutMail .To = "***@***" .CC = "" .BCC = "" .Subject = "Veille programmation / péremption du " & Date .HTMLBody = RangetoHTML(rng) .Display End With On Error GoTo 0 With Application .EnableEvents = True .ScreenUpdating = True End With Set OutMail = Nothing Set OutApp = Nothing End Sub Function RangetoHTML(rng As Range) Dim fso As Object Dim ts As Object Dim TempFile As String Dim TempWB As Workbook TempFile = Environ$("temp") & "\" & Format(Now, "dd-mm-yy h-mm-ss") & ".htm" rng.Copy Set TempWB = Workbooks.Add(1) With TempWB.Sheets(1) .Cells(1).PasteSpecial Paste:=8 .Cells(1).PasteSpecial xlPasteValues, , False, False .Cells(1).PasteSpecial xlPasteFormats, , False, False .Cells(1).Select Application.CutCopyMode = False On Error Resume Next .DrawingObjects.Visible = True .DrawingObjects.Delete On Error GoTo 0 End With With TempWB.PublishObjects.Add( _ SourceType:=xlSourceRange, _ Filename:=TempFile, _ Sheet:=TempWB.Sheets(1).Name, _ Source:=TempWB.Sheets(1).UsedRange.Address, _ HtmlType:=xlHtmlStatic) .Publish (True) End With Set fso = CreateObject("Scripting.FileSystemObject") Set ts = fso.GetFile(TempFile).OpenAsTextStream(1, -2) RangetoHTML = ts.readall ts.Close RangetoHTML = Replace(RangetoHTML, "align=center x:publishsource=", _ "align=left x:publishsource=") TempWB.Close savechanges:=False Kill TempFile Set ts = Nothing Set fso = Nothing Set TempWB = Nothing End Function
J'ai donc fait un test ligne 11 pour voir si cela changer quelque chose mais rien j'ai encore une page blanche....
Merci pour votre aide =)