Bon, personne pour me donner un coup de pouce
Alors une solution via l’objet “InternetExplorer.Application”
L’ouverture d’une adresse avec le dernier ID de connexion m’amène finalement sur une page “CONNEXION” car l’ID (le jeton) a été changé (24H d’utilisation par exemple).
Sur cette page CONNEXION se trouve finalement un lien qui lui contient un nouvel ID.
La récupération de cette page via un fichier HTM me permet de retrouver l’ID, déduction faite de la partie du lien standard.
Aprés récupération est stockage, puisque toute les pages internet en seront désormais visible uniquement avec ce nouvel ID, j’ai plus qu’à modifier chaque lien en remplaçant l’ancien ID par le nouveau (fonction Replace tout bête).
Voici une solution, qui n’est peut être pas celle qu’aurait choisi un professionnel du métier, mais là seul que j’ai pu convenablement appréhender au regard de mes compétences de novice en VBA.
Reférences nécessaires : Microsoft Internet Controls
Function ExtractWebPageAndSaveIt(E_Adress As String, E_FullPAth As String) As Boolean
On Error GoTo Standard_Error
Dim L_Object_IE As Object
Set L_Object_IE = CreateObject(“InternetExplorer.Application”)
' .........................
' OUVERTURE IE
' .........................
' paramétrage ouverture IE avec le lien
With L_Object_IE
.AddressBar = False
.StatusBar = False
.MenuBar = False
.Toolbar = 0
.Visible = False
.Navigate E_Adress
End With
'Laisse le temps à IE de charger en mémoire avant traitement
While L_Object_IE.Busy
'Do Nothing
Wend
While L_Object_IE.Document.ReadyState <> "complete"
'AgaIn Do Nothing
Wend
' ................................
' ENREGISTREMENT HTML EN LOCAL
' ................................
' E_FullPath vaudrait un truc du genre : "c:\mondossier\monfichier.htm"
ExtractWebPageAndSaveIt = WriteInFile(L_Object_IE.Document.body.outerHTML, E_FullPAth)
Cleanup:
L_Object_IE.Quit
Set L_Object_IE = Nothing
Exit Function
Standard_Error:
G_PrintDone = GeneralError(“Module1”, “Fonction”, “ExtractWebPageAndSaveIt”, Err.Number, Err.Description)
ExtractWebPageAndSaveIt = False
End Function
'------------------------------------------------------------------------------------------------------------------------------------------------------------------
’ ECRITURE D’UNE PAGE WEB DANS UN FICHIER
’ ------------------------------------------------------------------------------------------------------------------------------------------------------------------
Function WriteInFile(E_outerHTML As String, E_PathAndFile As String) As Boolean
On Error GoTo Standard_Error
intFile = FreeFile
Open E_PathAndFile For Output As #intFile
'This will write the data To file using the HTML passed In
Print #intFile, E_outerHTML
Cleanup:
Close #intFile
WriteInFile = True
Exit Function
Standard_Error:
G_PrintDone = GeneralError(“Module1”, “Fonction”, “WriteInFile”, Err.Number, Err.Description)
WriteInFile = False
End Function
'------------------------------------------------------------------------------------------------------------------------------------------------------------------
’ OUVERTURE DU FICHIER HTM DANS EXCEL
’ ------------------------------------------------------------------------------------------------------------------------------------------------------------------
Function OpenTheFile(E_FileName As String, E_PathAndFile As String) As Boolean
On Error GoTo Standard_Error
Workbooks.Open Filename(E_PathAndFile )
Windows(E_FileName).Activate
Worksheets(E_FileName).Activate
Cells.Select
Selection.UnMerge
OpenTheFile = True
Cleanup:
Exit Function
Standard_Error:
G_PrintDone = GeneralError(“Module1”, “Fonction”, “OpenTheFile”, Err.Number, Err.Description)
OpenTheFile = False
End Function
Si aprés, des compléments pour création de répertoire et suppression du fichier
’ ------------------------------------------------------------------------------------------------------------------------------------------------------------------
’ CREATION D’UN REPERTOIRE
’ ------------------------------------------------------------------------------------------------------------------------------------------------------------------
Function CreateDirectory(E_Directory As String) As Boolean
On Error GoTo Standard_Error
test = Dir(E_Directory, vbDirectory)
If Dir(E_Directory, vbDirectory) = “” Then
VBA.MkDir E_Directory
End If
CreateDirectory = True
Exit Function
Standard_Error:
G_PrintDone = GeneralError(“Module1”, “Fonction”, “CreateDirectory”, Err.Number, Err.Description)
CreateDirectory = False
End Function
’ ------------------------------------------------------------------------------------------------------------------------------------------------------------------
’ SUPPRESION D’UN FICHIER DU DISQUE DUR LOCAL
’ ------------------------------------------------------------------------------------------------------------------------------------------------------------------
Function CloseTheFile(E_FileName As String, E_PathAndFile As String) As Boolean
On Error GoTo Standard_Error
Windows(E_FileName).Close SaveChanges:=False
Kill E_PathAndFile
CloseTheFile = True
Cleanup:
Exit Function
Standard_Error:
'G_PrintDone = GeneralError(“Module1”, “Fonction”, “CloseTheFile”, Err.Number, Err.Description)
CloseTheFile = False
End Function