Bonjour. Je m'excuse de ne pas avoir su retrouver l'instrument de recherche dans le forum, mais de toute façon, cela m'étonnerait un peu que ce problème ait été déjà traité.
Depuis un courrier électronique reçu, je copie et colle en Excel 2010 une liste de liens qui constituent une revue de presse.
Le but étant de pouvoir envoyer à l'imprimante par défault l'impression de chacun des articles, d'un seul coup (ils peuvent être plusieurs dizaines par envoi).
Or, sur un autre forum, on m'a aidé à construir le code suivant; pour vous faire comprendre mon niveau: j'ai écrit la première macro et on m'a écrit la deuxième. Je leur suis particulièrement reconnaissant... mais cela ne marche pas; les pages s'affichent dans IE au lieu de s'imprimer.
Quelqu'un saurait m'aider à comprendre le problème?
Les commentaires et noms de variables sont en italien.
Je ne comprends même pas ce que sont les OLECMD, j'ai une idée bien confuse de ce que sont les Const (une sorte de variable... invariable, n'est-ce pas?).
Enfin... Merci d'avance!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 Option Explicit Dim URL As String Sub CicloDiStampa() Dim ur As Integer, r As Integer ur = Cells(65536, 1).End(xlUp).Row For r = 1 To ur If Cells(r, 1).Hyperlinks.Count <> 0 Then URL = Cells(r, 1).Hyperlinks(1).Address stampa End If Next End Sub Sub stampa() Dim oIExplorer As Object, wscript As Object On Error Resume Next 'il valore 6 corrisponde alla stampa Const OLECMDID_PRINT = 6 'Const OLECMDID_PRINT2 = 49 'con 2 eseguo il comando senza chiedere conferma Const OLECMDEXECOPT_DONTPROMPTUSER = 2 Set oIExplorer = CreateObject("InternetExplorer.Application") 'carico l'indirizzo trovato oIExplorer.Navigate URL 'imposta = 1 se vuoi aprire (o meglio vedere) la pagina web oIExplorer.Visible = 0 'attendo che la pagina sia caricata ' Do While oIExplorer.ReadyState <> 4 ' wscript.sleep 1000 ' Loop oIExplorer.ExecWB OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER 'oIExplorer.ExecWB OLECMDID_PRINT2, OLECMDEXECOPT_DONTPROMPTUSER End Sub
Partager