Ole Nesnesi Word hakkında :help:
#1
Üstadlar sormak istediğim bir konu var
verilerin anabaşlığında değişiklik olmamasına rağmen raporlamanın esnek ve değişken olması nedeni ile veri tabanına mswordden ole nesnesi ekleyerek çözüm bulmaya çalıştım haliyle veri tabanına baya yük bindiriyor bunun yerine form açıldığında örneğin c:\evraklar klasöründe bulunan örnek bir doc dosyasının kopyasını aldırarak adını Teklif No adlı veri alanındaki veriye göre vermesini sağlamak örn (TK-100.doc) mümkünmüdür. ve aç komutu olarak bir düğme ekleyerek düğmenin değişken dosyaismini aynı yolla aldırarak açtırmak mümkünmüdür.

örnek vt verebilirseniz senin çok memnun olurum



  Alıntı
Bu mesajı beğenenler:
#2
Merhaba..

Önce, istediğiniz olayı sağlaması için hazırladığımız, düzeneği çalıştıracak olan fonksiyonları yeni bir modül olarak kaydedin..:

Kod:
Function Taruz_Dosya_Yedekle(TrO As String)
On Error GoTo Hata

Dim Trz As FileSystemObject
Dim AranacakYol As String
Dim YeniDosyaAdi As String
Dim AnaDosya As String
Dim Klasor As String
Dim Kisim As String
Dim Eki As String

AnaDosya = "C:\Evraklar\Teklif.doc"
AranacakYol = AnaDosya
Kisim = Taruz_Dosya(AranacakYol, 2)
Eki = Taruz_Dosya(AranacakYol, 3)

Klasor = "C:\Evraklar\"
YeniDosyaAdi = TrO & ".doc"

Set Trz = New FileSystemObject
Trz.CopyFile AranacakYol, Klasor & YeniDosyaAdi, True
Set Trz = Nothing

MsgBox TrO & " adıyda yeni bir Teklif Dosyası oluşturuldu..", vbInformation, " Taruz"

Exit_Hata:
Exit Function

Hata:
MsgBox Err.Description, , " Taruz"
Resume Exit_Hata

End Function


Private Function Taruz_Dosya(TYol As String, Optional OTrz As Long)
On Error GoTo Taruz_Dosya_Hata

Dim DoAdi As String
Dim Surucu As String
Dim TBol As String
Dim Bolge As String
Dim DosyaT As String
Dim KisaAdi As String
Dim sExt As String
    
DoAdi = TYol
TBol = DoAdi
    
Do While Right$(TBol, 1) <> "\"
    TBol = Left$(TBol, Len(TBol) - 1)
Loop
    
Surucu = Left$(DoAdi, InStr(DoAdi, ":") + 1)
Bolge = Mid$(TBol, Len(Surucu) - 2)
TBol = Mid$(TBol, Len(Surucu) + 1)
DosyaT = Mid$(DoAdi, Len(TBol) + 4)

Select Case OTrz
    Case 1
        DosyaT = Mid$(DoAdi, Len(TBol) + 4)
        Taruz_Dosya = DosyaT
    Case 2
        KisaAdi = Left$(DosyaT, Len(DosyaT) - 4)
        Taruz_Dosya = KisaAdi
    Case 3
        sExt = Right$(DosyaT, 4)
        Taruz_Dosya = sExt
End Select

Taruz_Dosya_Exit:
    Exit Function

Taruz_Dosya_Hata:
    MsgBox Err.Description, , " Taruz"
    Resume Taruz_Dosya_Exit

End Function


Sonrada form üzerinden kontrolleri sağlamalıyız.. Tablola Evet-Hayır veri türünde bir alan daha ekleyip düğmeye tıkladığınızda bir dosyanın tekrardan aynı isimle kaydedilmesini engeleyecek kod kümesini yazalım..:

Kod:
If dosyasıvarmı = 0 Then
Taruz_Dosya_Yedekle ([Teklif No])
dosyasıvarmı = -1
Else
MsgBox [Teklif No] & " adında daha önce bir Teklif Dosyası oluşturmuşsunuz..", , " Taruz"
End If

bu da word dosyasını açmak için kullanmanız gereken kod..:

Kod:
On Error GoTo Hat

Dim AYol As String
AYol = "C:\Evraklar\" & [Teklif No] & ".doc"
If dosyasıvarmı = -1 Then
Application.FollowHyperlink AYol, , True, True
Else
MsgBox " Böyle bir dosya yok! Klasörü kontrol ediniz..", , " Taruz"
End If
Hat:



  Alıntı
Bu mesajı beğenenler:
#3
bravo bravo Teşekkürler hocam ellerine gözlerine beynine sağlık opucuk



  Alıntı
Bu mesajı beğenenler:
#4
Rica ederim.. Smile

İyi geceler..



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  Word Dot şaplonunu Açtırarak Dosya Göndermek Aplt 1 332 12-01-2025, 17:11
Son Mesaj: dsezgin
  [TABLO] Word Tablodan Tarih Aktarımı kahramanselim 6 510 01-10-2024, 12:34
Son Mesaj: halily
  [TABLO] Word Tablosundan Aktarım kahramanselim 4 352 26-09-2024, 00:32
Son Mesaj: halily
  [RAPOR] Access De Ki Raporu Word Belgesi Olarak Vba Kodu Ile Açma Ahmet51 10 882 01-08-2024, 10:28
Son Mesaj: dsezgin
  [VBA] Access'ten Word'e Aldığım Her Bir Sayfayı Excel Sayfasına Aktarma abkbek 3 724 13-08-2021, 14:46
Son Mesaj: dsezgin
  [FORM] Formdan Sorgu çalıştırarak Word E Gönderme bibib 1 666 01-10-2020, 13:11
Son Mesaj: onur_can
  [FORM] Word Belgesindeki Resmi Formdaki Ek Alanına Fare Ile Kopyala Yapıştır tersl 1 715 26-03-2020, 02:17
Son Mesaj: tersl
  Formdaki Verileri Word'e Tekli Ve çoklu Yazdırma prestij06 3 1.190 17-02-2020, 22:52
Son Mesaj: dsezgin

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi