Fireman911
Gebruiker
- Lid geworden
- 1 mrt 2010
- Berichten
- 8
Beste allen,
Alvast mijn excuus voor het geval deze vraag al eens gesteld is, heb het internet afgezocht maar ik kon geen antwoord vinden op mijn vraag.
Ik heb een klein visual basic programma geschreven achter een knop in excel.
Een van de dingen die na het drukken van deze knop moet gebeuren is het printen van een pdf file.
Deze print functie komt binnen een If-functie, uit mijn research heb ik de codering zoals hieronder gevonden, helaas werkt deze functie niet omdat hij bij public declare ptrsafe function blijft hangen.
If Range("c6") = "SH-DO 001" Then
Sheets("Sheet2").Select
Range("j2").Select
ActiveCell.FormulaR1C1 = "x"
Sheets("Sheet1").Select
Public Enum actionType
openfile
PrintFile
End Enum
Public Const SW_SHOWNORMAL As Long = 1
Public Declare PtrSafe 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
Function ExecuteFile(fileName As String, action As actionType)
' action can be either "Openfile" or "Printfile".
Dim sAction As String
Select Case action
Case 0 ' openfile
sAction = "Open"
Case 1 ' printfile
sAction = "Print"
End Select
ShellExecute 0, sAction, fileName, vbNullString, "", SW_SHOWNORMAL
End Function
Sub TestPrint()
' open a file
ExecuteFile "D:\Voucher_Part1.pdf", PrintFile
End Sub
End If
Alvast bedankt voor jullie hulp!
Met vriendelijke groet,
Ralf Janssen
Mijn pc:
Asus 64-bit windows 7 home premium
Microsoft office professional Plus 2010
Alvast mijn excuus voor het geval deze vraag al eens gesteld is, heb het internet afgezocht maar ik kon geen antwoord vinden op mijn vraag.
Ik heb een klein visual basic programma geschreven achter een knop in excel.
Een van de dingen die na het drukken van deze knop moet gebeuren is het printen van een pdf file.
Deze print functie komt binnen een If-functie, uit mijn research heb ik de codering zoals hieronder gevonden, helaas werkt deze functie niet omdat hij bij public declare ptrsafe function blijft hangen.
If Range("c6") = "SH-DO 001" Then
Sheets("Sheet2").Select
Range("j2").Select
ActiveCell.FormulaR1C1 = "x"
Sheets("Sheet1").Select
Public Enum actionType
openfile
PrintFile
End Enum
Public Const SW_SHOWNORMAL As Long = 1
Public Declare PtrSafe 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
Function ExecuteFile(fileName As String, action As actionType)
' action can be either "Openfile" or "Printfile".
Dim sAction As String
Select Case action
Case 0 ' openfile
sAction = "Open"
Case 1 ' printfile
sAction = "Print"
End Select
ShellExecute 0, sAction, fileName, vbNullString, "", SW_SHOWNORMAL
End Function
Sub TestPrint()
' open a file
ExecuteFile "D:\Voucher_Part1.pdf", PrintFile
End Sub
End If
Alvast bedankt voor jullie hulp!
Met vriendelijke groet,
Ralf Janssen
Mijn pc:
Asus 64-bit windows 7 home premium
Microsoft office professional Plus 2010