• DİKKAT

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

VBScript Komut Dosyası (.vbs)

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,440
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Sayın hocalarım, bir WORD dosyasını, PDF dosyasına çevirmek için (toplu halde), yani bir klasörde WORD dosyaları var, başka bir klasöre PDF olarak dönüştürmek için VBScript Komut Dosyası (.vbs) yazılabilir mi? Yardımcı olabilir misiniz? Bir YouTube videosunda görmüştüm. Ama çalışmadı. Bu konuda daha önce de yadım. Çünkü iş yerinde kullanmak için gerekli.
Şimdiden teşekkür ederim. Saygılarımla.
 
Aşağıdaki linkte yer alan VBScript ile, Windows'un dosya üzerinde sağ klikle çıkan menüden seçilecek "Send to" (Gönder) komutuyla Word, Excel, PowerPoint dosyalarını, bulundukları klasörde PDF'e çevirebilirsiniz....



.
 
Aşağıdaki linkte yer alan VBScript ile, Windows'un dosya üzerinde sağ klikle çıkan menüden seçilecek "Send to" (Gönder) komutuyla Word, Excel, PowerPoint dosyalarını, bulundukları klasörde PDF'e çevirebilirsiniz....



.
Hocam, öncelikle çok teşekkür ederim. VBScript oluşturdum DOSYA sanırım doğru.
Yalnız affınıza sığınarak "Windows'un dosya üzerinde sağ klikle çıkan menüden seçilecek "Send to" " ifadesini anlamadım. Word üzerine sağ tıklayınca sadece belgeler seçeneği var. Bir de ZİP yap falan. Yardımcı olabilir misiniz.
Tekrar teşekkür ederim.
Saygılarımla.
 
İlk önce oluşturduğunuz VBScript dosyasını, bilgisayarda bir klasöre yerleştirin ve daha sonra bu dosyanın kısa yolunu oluşturun.

Daha sonra, Windows Start-Başlat düğmesine basın ve oradaki arama kutusuna shell:sendto yazıp, Enter tuşuna basın.

Capture.PNG

Bahsettiğim "Send To" klasörü ekrana gelecektir. Bu pencerenin içine, daha önce oluşturduğunuz kısayol dosyasını sürükleyip, bırakın.

Örneğin, benim VBS dosyamın adı, aşağıda görüldüğü gibi ConvertPDF.


Capture.PNG


Pencereyi kapattıktan sonra, herhangibir Word, Excel, PowerPoint dosyasının üzerine sağ tıkladığınızda aşağıdaki resimde görülen menü ortaya çıkacak ve sağ tarafta sizin VBScript dosyasının adını göreceksiniz. Bunu tıkladığınız zaman, seçilen dosya veya dosyaların tümü bulundukları klasörde PDF'e çevrilecektir.


Untitled.png

Dediğim gibi, aynı anda seçtiğiniz tüm dosyalar PDF'e çevrilebilir...... Başka bir yolu da; seçtiğiniz dosyaları tutup söz konusu VBS dosyasının üzerine sürükleyip, bırakmak olur. Bu şekilde de yapabilirsiniz, ama "Send To" klasörünü kullanmak, daha esnek tabii....
 
İlk önce oluşturduğunuz VBScript dosyasını, bilgisayarda bir klasöre yerleştirin ve daha sonra bu dosyanın kısa yolunu oluşturun.

Daha sonra, Windows Start-Başlat düğmesine basın ve oradaki arama kutusuna shell:sendto yazıp, Enter tuşuna basın.

Ekli dosyayı görüntüle 237513

Bahsettiğim "Send To" klasörü ekrana gelecektir. Bu pencerenin içine, daha önce oluşturduğunuz kısayol dosyasını sürükleyip, bırakın.

Örneğin, benim VBS dosyamın adı, aşağıda görüldüğü gibi ConvertPDF.


Ekli dosyayı görüntüle 237514


Pencereyi kapattıktan sonra, herhangibir Word, Excel, PowerPoint dosyasının üzerine sağ tıkladığınızda aşağıdaki resimde görülen menü ortaya çıkacak ve sağ tarafta sizin VBScript dosyasının adını göreceksiniz. Bunu tıkladığınız zaman, seçilen dosya veya dosyaların tümü bulundukları klasörde PDF'e çevrilecektir.


Ekli dosyayı görüntüle 237516

Dediğim gibi, aynı anda seçtiğiniz tüm dosyalar PDF'e çevrilebilir...... Başka bir yolu da; seçtiğiniz dosyaları tutup söz konusu VBS dosyasının üzerine sürükleyip, bırakmak olur. Bu şekilde de yapabilirsiniz, ama "Send To" klasörünü kullanmak, daha esnek tabii....

Hocam, çok ama çok teşekkür ederim. Sonunda oldu. İnanın bu 1 saatlik işimi 3 dakikaya indirdi.
Elinize emeğinize sağlık.
Saygılarımla.
Varolun. İyi ki varsınız.
 
Hocam, farklı bir klasöre gönderme yolu var mı?
 
Script'in en sonundaki "GetFileExtension" isimli fonksiyonda, aşağıdaki satırı;

C#:
PathOfPDF = objFSO.GetParentFolderName(p_strOriginalFilePath) & "\"


bununla değiştirin;

Kod:
PathOfPDF = "C:\TestFolder\"


PDF dosyaları C:\TestFolder klasörüne yerleştirilmiş olur......

.
 
Son düzenleme:
Script'in en sonundaki "GetFileExtension" isimli fonksiyonda, aşağıdaki satırı;

C#:
PathOfPDF = objFSO.GetParentFolderName(p_strOriginalFilePath) & "\"


bununla değiştirin;

Kod:
PathOfPDF = "C:\TestFolder\"


PDF dosyaları C:\TestFolder klasörüne yerleştirilmiş olur......

.
Çok ama çok teşekkür ederim hocam. Sorunsuz, mükemmel çalışıyor.
Elinize emeğinize sağlık.
Saygılarımla.
 
Eyvallah, kolay gelsin...

.
Hocam merhaba, sizin yazdığınız bir kod vardı, teşekkür ederim. Hâlâ kullanıyorum.

Set WshNetwork = WScript.CreateObject("WScript.Network")

Set NewXL = CreateObject("Excel.Application")

Set MyWB = NewXL.workbooks.open("C:\Users\muratgunay48\Desktop\RAPORLAR\MAKRO.xlsm")

NewXL.Visible = True

NewXL.application.run "rapor"

MyWB.Close False

NewXL.Quit

Set MyWB = Nothing

Set NewXL = Nothing

Set WshNetwork = Nothing

Ama bu kodun yol olarak. Set MyWB = NewXL.workbooks.open("C:\Users\muratgunay48\Desktop\RAPORLAR\MAKRO.xlsm")
Değil de her masaüstünde çalışması için nasıl revize edebilirim. Ne denedimse olmadı.
Çok teşekkür ederim.
 
Deneyin bakalım çalışacak mı?

C++:
Set WshShell = WScript.CreateObject("WScript.Shell")
DesktopPath = WshShell.SpecialFolders("Desktop") & "\RAPORLAR\"

Set NewXL = CreateObject("Excel.Application")
Set MyWB = NewXL.Workbooks.Open(DesktopPath & "MAKRO.xlsm")

NewXL.Visible = True
NewXL.application.run "rapor"

MyWB.Close False
NewXL.Quit

Set MyWB = Nothing
Set NewXL = Nothing
Set WshShell = Nothing
 
Geri
Üst