Essayez d'utiliser VBA pour exécuter une commande javascript sur un contrôle webbrowser
Je suis en train d'exécuter la commande toggletable ou showall fonction sur une page javascript qui a les tables de l'information cachée jusqu'à ce que vous cliquez sur le bouton + à côté d'elle. Je voudrais simplement rendre ces élargi automatiquement à des fins d'impression. Voici ce que j'ai jusqu'à présent.
Function PrintWebPage()
Const OLECMDID_PRINT = 6
Const OLECMDEXECOPT_PROMPTUSER = 1
Const OLECMDEXECOPT_DONTPROMPTUSER = 2
Dim ie As Object
Dim strWebPage As String, stblAutoNumber(99999) As String, stblBadgeNumber(999999) As String, stblShopNumber(99999) As String
DoCmd.SetWarnings False
' Connect to DB
Set db = CurrentDb()
' Select Statement for scrolling through everyone
sqlString = "SELECT tblPersonal.AutoNumber, tblPersonal.[Badge Number], tblPersonal.Shop , tblPersonal.[Last Name] FROM tblPersonal WHERE tblPersonal.[Shop] = " & """" & ShopUserATMS & """" & ";"
' Sets mRecordset to query the database
Set mRecordset = db.OpenRecordset(sqlString)
' Goes to first record of the generated list
mRecordset.MoveFirst
Do While Not mRecordset.EOF
' Scroll through personal List
stblAutoNumber(i) = mRecordset("AutoNumber")
CheckBadgeNull = mRecordset("Badge Number")
If IsNull(CheckBadgeNull) = True Then
GoTo NoRec:
End If
stblBadgeNumber(i) = mRecordset("Badge Number")
stblShopNumber(i) = mRecordset("Shop")
strWebPage = "https://was3.nnsy.navy.mil/atms/components/supervisor/atms_supv_detail.cfm?BADGE=" & stblBadgeNumber(i)
DoEvents: DoEvents: DoEvents
Set ie = CreateObject("internetexplorer.application")
ie.Navigate strWebPage
Do Until ie.Busy = False
sSleep (1)
Loop
Call ie.Document.parentWindow.execScript("toggletable(Quals)", "JavaScript")
'ie.getelementsbyid("Showall") = True
'stblShopNumber(99) = ie.Document.execcommand("toggletable", False, Null)
ie.ExecWB OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER
sSleep (2)
NoRec:
Loop
ie.Quit
Set ie = Nothing
End Function
Il me donne accès refusé lorsque j'utilise la commande suivante:
Appel ie.Document.parentWindow.execScript("toggletable(Qual)", "JavaScript")
Toute aide est appréciée. Me frappant la tête sur celui-ci pendant plus de 8 heures...
- avez-vous finissent par résoudre le problème? (et je ne parle pas de DontFretBrett de la méthode alternative, puisque ce n'est pas la réponse à votre question). Si vous n'avez comprendre pourquoi l'Accès Est Refusé est levée, merci de le faire partager car je vais avoir le même problème.
Vous devez vous connecter pour publier un commentaire.
Vous devez activer l'option "Autoriser le contenu actif à s'exécuter dans les fichiers de Mon Ordinateur" option dans Options Internet-->Avancé-->Sécurité.
Si vous souhaitez modifier ce paramètres d'internet explorer par programme, ci-dessous est le code vbscript pour elle:
ensemble dwValue à 0 pour l'activer, et 1 pour désactiver les paramètres d'internet explorer.