Activation du document Word ouvert
Résolu
Del Pino
-
Del Pino -
Del Pino -
Bonjour à tous
J'ai créé ce code afin de pouvoir selectionner tous les documents souhaités, d'ouvrir leur lien Hypertexte et d'imprimer ces documents. Avec ce code j'arrive à ouvrir tous les documents et à imprimer tous les documents Excel. Mais je n'arrive pas à activer les documents Word. En effet je ne connais que workbook.activate ou Worksheet.activate, mais je n'ai rien trouvé pour activer le dernier document ouvert (donc word et pdf ne s'imprime pas). Une fonction ActiveDocument existe-t'elle? Ou une activation automatique du lien hypertexte suivi?
Ci joint mon code :
Sub Impression()
Dim a As Range
For Each a In Range("J12:J85")
If a.Value = "X" Then 'On regarde si la case est cochée
If a.Offset(0, -7).Hyperlinks.Count = 0 Then 'On vérifie qu'un lien existe sur cette cellule
GoTo Lastline
Else
Application.DisplayAlerts = False
a.Offset(0, -7).Select
Selection.Hyperlinks(1).Follow 'On ouvre le lien hypertexte
ActiveWorkbook.Application.Dialogs(xlDialogPrint).Show
ActiveWorkbook.Close False
Application.DisplayAlerts = True
End If
Else
GoTo Lastline
End If
Lastline:
Next
MsgBox ("L'impression est terminée")
End Sub
Merci pour vos réponses
J'ai créé ce code afin de pouvoir selectionner tous les documents souhaités, d'ouvrir leur lien Hypertexte et d'imprimer ces documents. Avec ce code j'arrive à ouvrir tous les documents et à imprimer tous les documents Excel. Mais je n'arrive pas à activer les documents Word. En effet je ne connais que workbook.activate ou Worksheet.activate, mais je n'ai rien trouvé pour activer le dernier document ouvert (donc word et pdf ne s'imprime pas). Une fonction ActiveDocument existe-t'elle? Ou une activation automatique du lien hypertexte suivi?
Ci joint mon code :
Sub Impression()
Dim a As Range
For Each a In Range("J12:J85")
If a.Value = "X" Then 'On regarde si la case est cochée
If a.Offset(0, -7).Hyperlinks.Count = 0 Then 'On vérifie qu'un lien existe sur cette cellule
GoTo Lastline
Else
Application.DisplayAlerts = False
a.Offset(0, -7).Select
Selection.Hyperlinks(1).Follow 'On ouvre le lien hypertexte
ActiveWorkbook.Application.Dialogs(xlDialogPrint).Show
ActiveWorkbook.Close False
Application.DisplayAlerts = True
End If
Else
GoTo Lastline
End If
Lastline:
Next
MsgBox ("L'impression est terminée")
End Sub
Merci pour vos réponses
A voir également:
- Activation du document Word ouvert
- Clé d'activation windows 10 - Guide
- Word 2013 - Télécharger - Traitement de texte
- Tableau word - Guide
- Signer un document word - Guide
- Word et excel gratuit - Guide
4 réponses
Bonjour, et merci pour votre réponse.
Hélas je n'ai pas réussi à trouver mon bonheur dans votre lien. En fait je voudrais une fonction vba qui selectionne automatiquement le lien suivi par hypertexte, qu'il soit excel,word ou pdf. Avez-vous des idées?
Hélas je n'ai pas réussi à trouver mon bonheur dans votre lien. En fait je voudrais une fonction vba qui selectionne automatiquement le lien suivi par hypertexte, qu'il soit excel,word ou pdf. Avez-vous des idées?
Voilà les codes pour Word et PDF, a adapter les cellules des liens hypertextes :
Option Explicit Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long 'Doc Word Private Sub CommandButton1_Click() 'Nécessite d'activer la référence "Microsoft Word xx.x Object Library" Range("A1").Select 'lien hypertexte Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True ActiveDocument.PrintPreview Dialogs(wdDialogFilePrintSetup).Show End Sub 'PDF Private Sub CommandButton2_Click() Dim fich As String Dim x, rep Range("A3").Select 'lien hypertexte fich = Range("A3").Value 'chemin fichier Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True rep = ShellExecute(0, "open", fich, "", "", 0) '==================================== Ordre d'impression ShellExecute x, "print", fich, "", "", 1 ' ==================================== End Sub