• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

makro ile yazdırma. (PDF veya JPG)

Katılım
20 Aralık 2006
Mesajlar
173
Excel Vers. ve Dili
365 (2016) Türkçe
Yüklediğim dosyaya göre anlatıyorum.

1. bilgiler!C107 hücresinde yazan ismi,

'ekipman sertifika veritabanı' nda bulup ( D17 yi bulması lazım.),

eğer boş değilse aynı satır numarasında "R" sutununda ( R17 ) yazan dosya yolunu kopyalayacak.

Yol adının başvurduğu dosyayı yazdıracak. (jpg ve pdf.)

SORUN YAŞADIĞIM BÖLÜMÜ MAKRODA YAZDIM.

çalışılan dosyayı link attım ve makroyu aşağıda görebilirsiniz.

https://drive.google.com/file/d/0B5V1IR0Qrw82aC1DUTZZSmhaS3M/view?usp=sharing

Kod:
Option Explicit
 
Declare PtrSafe Function apiShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
ByVal hwnd As LongPtr, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As LongPtr) _
As LongPtr
 
Public Sub PrintpdfFile(ByVal strPathAndFilename As String)
     
    Call apiShellExecute(Application.hwnd, "print", strPathAndFilename, vbNullString, vbNullString, 0)
     
End Sub
 
Sub Test()
     
    PrintpdfFile ("d:\business marka başvuru durumu.pdf")
' YUKARIDAKİ KOD İLE PDF DOSYASINI YAZDIRABİLİYORUM. SIKINTI ÇIKMIYOR.
' SORUNUM AŞAĞIDAKİ BÖLÜMDE BULUNUYOR.

End Sub


Sub ruhsat_b_artı_e()

Dim Kumanda_Kartı
Dim Kumanda_kartının_bulunacağı_alan
Dim kumanda_kartı_sertifika_1
Dim kumanda_kartı_sertifika_yolu_1

Kumanda_Kartı = Sheets("bilgiler").Range("C107").Value
    
Kumanda_kartının_bulunacağı_alan = Sheets("ekipman sertifika veritabanı").Range("D6:V20")

kumanda_kartı_sertifika_1 = Application.WorksheetFunction.VLookup(Kumanda_Kartı, Kumanda_kartının_bulunacağı_alan, 15)

kumanda_kartı_sertifika_yolu_1 = kumanda_kartı_sertifika_1.Value
PrintpdfFile (kumanda_kartı_sertifika_yolu_1)

End Sub
 
şu an sadece pdf ile ilgili çalışabildim. (amatör olunca anca .....)

Ancak gereksinim duyduğum kod, pdf, jpg, bmp ve tif uzantılı dosyaları yazdırabilmek.
 
Geri
Üst