Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment terminer une instance IE en VBA

3 réponses
Avatar
Fredo P.
Bonjour
Tout est dans l' objet, il est fréquent, quand je dois utiliser la procédure
suivante plusieurs fois de suite qu'elle reste coincée entre "Do Until
IE.ReadyState=4 " et "Loop", que le Ctrl Alt Supp soit le dernier recourt
pour sortir de la routine.

Sub CherchecodeSource(B$)
Dim CodeSource As String, IE As Object
Dim TempFile As String, T As Date
On Error Resume Next
EnaF
Sheets("IDCours").Select
[G2] = B
T = Time
[A:A].ClearContents
Set IE = CreateObject("InternetExplorer.Application")
TempFile = "c:\Fred.txt"
IE.Visible = False ' Ou True
IE.navigate URL:=B
Do Until IE.ReadyState = 4
DoEvents ' Ne sort pas d'ici
Loop
CodeSource = IE.document.body.innerHTML
Open TempFile For Output As #1
Print #1, CodeSource
Close #1
Open TempFile For Input As #1
Do While Not EOF(1)
Input #1, LaLigne
A = A + 1
Sheets("IDCours").Range("A" & A) = LaLigne
Loop
Close #1
Kill TempFile
IE.Quit
Set IE = Nothing

End Sub

3 réponses

Avatar
DanielCo
Bonjour,
IE.Quit nee fait pas l'affaire ?
Daniel


Fredo P. a écrit
Bonjour
Tout est dans l' objet, il est fréquent, quand je dois utiliser la procédure
suivante plusieurs fois de suite qu'elle reste coincée entre "Do Until
IE.ReadyState=4 " et "Loop", que le Ctrl Alt Supp soit le dernier recourt
pour sortir de la routine.

Sub CherchecodeSource(B$)
Dim CodeSource As String, IE As Object
Dim TempFile As String, T As Date
On Error Resume Next
EnaF
Sheets("IDCours").Select
[G2] = B
T = Time
[A:A].ClearContents
Set IE = CreateObject("InternetExplorer.Application")
TempFile = "c:Fred.txt"
IE.Visible = False ' Ou True
IE.navigate URL:=B
Do Until IE.ReadyState = 4
DoEvents ' Ne sort pas d'ici
Loop
CodeSource = IE.document.body.innerHTML
Open TempFile For Output As #1
Print #1, CodeSource
Close #1
Open TempFile For Input As #1
Do While Not EOF(1)
Input #1, LaLigne
A = A + 1
Sheets("IDCours").Range("A" & A) = LaLigne
Loop
Close #1
Kill TempFile
IE.Quit
Set IE = Nothing

End Sub
Avatar
Fredo P.
Bonjour
IE.Quit nee fait pas l'affaire ?


Normalement il le devrait, La routine est suivie d'une autre faisant appel à
IE par une seconde voie pour la recherche de données, est ce qu'il n'y
aurait pas la le pb?,
la partie concernée du code de cette seconde routine:
With ActiveSheet.QueryTables.Add(Connection:= _
Adweb _
, Destination:=Range("A1"))
.Name = "pid111-partants.html?race_id€5612"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = False
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With

"DanielCo" a écrit dans le message de news:
jpi53n$h49$
Bonjour,
IE.Quit nee fait pas l'affaire ?
Daniel


Fredo P. a écrit
Bonjour
Tout est dans l' objet, il est fréquent, quand je dois utiliser la
procédure suivante plusieurs fois de suite qu'elle reste coincée entre
"Do Until IE.ReadyState=4 " et "Loop", que le Ctrl Alt Supp soit le
dernier recourt pour sortir de la routine.

Sub CherchecodeSource(B$)
Dim CodeSource As String, IE As Object
Dim TempFile As String, T As Date
On Error Resume Next
EnaF
Sheets("IDCours").Select
[G2] = B
T = Time
[A:A].ClearContents
Set IE = CreateObject("InternetExplorer.Application")
TempFile = "c:Fred.txt"
IE.Visible = False ' Ou True
IE.navigate URL:=B
Do Until IE.ReadyState = 4
DoEvents ' Ne sort pas d'ici
Loop
CodeSource = IE.document.body.innerHTML
Open TempFile For Output As #1
Print #1, CodeSource
Close #1
Open TempFile For Input As #1
Do While Not EOF(1)
Input #1, LaLigne
A = A + 1
Sheets("IDCours").Range("A" & A) = LaLigne
Loop
Close #1
Kill TempFile
IE.Quit
Set IE = Nothing

End Sub




Avatar
MichD
Bonjour,

Pour supprimer toutes les instances d'un exécutable ouvert, visible ou non, tu peux
appeler cette procédure comme ceci :


Pour supprimer Internet Explorer...
'-------------------------------------
Sub test()
On Error Resume Next
Supprimer_Un_Executable "iexplore.exe"
End Sub
'-------------------------------------

Sub Supprimer_Un_Executable(SonNom As String)
Dim strComputer As String, objWMIService As Object
Dim colProcessList As Object, objProcess As Variant

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!" & strComputer & "rootcimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & SonNom & "'")
For Each objProcess In colProcessList
objProcess.Terminate
Next
End Sub
'-------------------------------------




"Fredo P." a écrit dans le message de groupe de discussion :
jpkh8j$kio$

Bonjour
IE.Quit nee fait pas l'affaire ?


Normalement il le devrait, La routine est suivie d'une autre faisant appel à
IE par une seconde voie pour la recherche de données, est ce qu'il n'y
aurait pas la le pb?,
la partie concernée du code de cette seconde routine:
With ActiveSheet.QueryTables.Add(Connection:= _
Adweb _
, Destination:=Range("A1"))
.Name = "pid111-partants.html?race_id€5612"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = False
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse
End With

"DanielCo" a écrit dans le message de news:
jpi53n$h49$
Bonjour,
IE.Quit nee fait pas l'affaire ?
Daniel


Fredo P. a écrit
Bonjour
Tout est dans l' objet, il est fréquent, quand je dois utiliser la procédure suivante
plusieurs fois de suite qu'elle reste coincée entre "Do Until IE.ReadyState=4 " et
"Loop", que le Ctrl Alt Supp soit le dernier recourt pour sortir de la routine.

Sub CherchecodeSource(B$)
Dim CodeSource As String, IE As Object
Dim TempFile As String, T As Date
On Error Resume Next
EnaF
Sheets("IDCours").Select
[G2] = B
T = Time
[A:A].ClearContents
Set IE = CreateObject("InternetExplorer.Application")
TempFile = "c:Fred.txt"
IE.Visible = False ' Ou True
IE.navigate URL:=B
Do Until IE.ReadyState = 4
DoEvents ' Ne sort pas d'ici
Loop
CodeSource = IE.document.body.innerHTML
Open TempFile For Output As #1
Print #1, CodeSource
Close #1
Open TempFile For Input As #1
Do While Not EOF(1)
Input #1, LaLigne
A = A + 1
Sheets("IDCours").Range("A" & A) = LaLigne
Loop
Close #1
Kill TempFile
IE.Quit
Set IE = Nothing

End Sub