Comment renommer un fichier html en php

fifounet

XLDnaute Occasionnel
Bonjour le forum
J'ai récupérer un fichier avec une super macro vb
que m'a fait un ami, je veux maintenant la modifier mais je n'ai pas les compétences !
Le but est d'enregistrer une feuille excel en une page html (macro actuelle)
Je veux maintenant ne sélectionner qu'une zone de cette feuille (A1:p42) et la
renommer automatiquement en .php
Voici un bout du code:

Public Sub publication_tri()
Dim nom_fichier As String, no_feuille As Integer, nom_feuille As String
Dim nom_dossier As String, reponse As String

' * publication des classements de chaque poule *

Workbooks("classement_poule.xls").Activate

' on ne prend pas en compte le 1er feuillet (menu) et le dernier (classement)
For no_feuille = 2 To Worksheets.Count - 1

' tri du tableau de classement de la poule
Range("G5:p12").Select
Selection.Sort Key1:=Range("H5"), Order1:=xlDescending, Key2:=Range("P5") _
, Order2:=xlDescending, Key3:=Range("G5"), Order3:=xlDescending, Header _
:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

nom_feuille = Sheets(no_feuille).Name
nom_fichier = ThisWorkbook.Path & nom_dossier & "\clas-" & Sheets(no_feuille).Name & ".htm"

' publication du feuillet lu
ActiveWorkbook.PublishObjects.Add( _
SourceType:=xlSourceSheet, _
Filename:=nom_fichier, _
Sheet:=nom_feuille, _
HtmlType:=xlHtmlStatic).Publish

End If
Next no_feuille
Sheets("menu").Select
End Sub

D'avance merci
 

chris

XLDnaute Barbatruc
Re : Comment renommer un fichier html en php

Bonjour

En théorie il faudrait modifier la ligne
nom_fichier = ThisWorkbook.Path & nom_dossier & "\clas-" & Sheets(no_feuille).Name & ".htm"

et remplacer .htm par .php

mais un fichier php ne contient pas la même chose qu'un fichier html : selon le contenu cela ne marchera peut-être pas et sinon pourquoi changer l'extension ?
 

Staple1600

XLDnaute Barbatruc
Re : Comment renommer un fichier html en php

Bonjour

edit: en ne modifiant que ta macro
' publication du feuillet lu
ActiveWorkbook.PublishObjects.Add( _
SourceType:=xlSourceSheet, _
Filename:=nom_fichier, _
Sheet:=nom_feuille, _
Source:="A1:p42", _ ' en rajoutant celle ligne à ta macro ca doit fonctionner non?
HtmlType:=xlHtmlStatic).Publish




Une macro presque identique à la tienne(que j'avais postée dans un autre post) mélangée à la tienne.
https://www.excel-downloads.com/threads/macro-exporter-page-web.81152/

Voir la la ligne en gras



A tester (et a adpater/compléter car je vois un End If dans ton code
mais pas le If)

Code:
Sub test()
Dim nom_fichier As String, no_feuille As Integer, nom_feuille As String
Dim nom_dossier As String, reponse As String
 * publication des classements de chaque poule *

Workbooks("classement_poule.xls").Activate

' on ne prend pas en compte le 1er feuillet (menu) et le dernier (classement)
For no_feuille = 2 To Worksheets.Count - 1

' tri du tableau de classement de la poule
Range("G5:P12").Select
Selection.Sort Key1:=Range("H5"), Order1:=xlDescending, Key2:=Range("P5") _
, Order2:=xlDescending, Key3:=Range("G5"), Order3:=xlDescending, Header _
:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

nom_feuille = Sheets(no_feuille).Name
nom_fichier = ThisWorkbook.Path & nom_dossier & "\clas-" & Sheets(no_feuille).Name & ".htm"
With ActiveWorkbook.PublishObjects.Add( _
SourceType:=xlSourceRange, _
Filename:=nom_fichier, _
Sheet:=nom_feuille , _
[B]Source:="A1:P42", [/B]_
HtmlType:=xlHtmlStatic)
.Publish (True)
End With
End If
Next no_feuille
Sheets("menu").Select
End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 336
Messages
2 087 387
Membres
103 532
dernier inscrit
sdfrgthyjuki