AccessTr.neT

Tam Versiyon: Ortak Ağda Uygulamanın Çalışmama Sorunu
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2
Merhaba arkadaşlar.

Hazırladığım uygulamayı komple tüm dosyaları ile birlikte, anamakinamız üzerinde bir klasöre koydum. paylaşımı olan bir klasör. uygulamada form doldurulup worde atarak talimat oluşturuluyor. uygulama açılıyor ancak formlar doldurulup oluştur dendiğinde her nekadar oluşturuldu desede herhangi bir oluşturma gerçekleşmiyor.  uygulama klasörünü masaüstüme aldığımda sorunsuz çalışıyor.

oluşturma yolum şu şekilde;

Kod:
strTemplateLocation = CurrentProject.Path & "\origins" & "\efttalimat.docx"


ağda çalıştırabilmek için ne yapmam gerekiyor. Forumda arama yaptığımda aşağıdaki linkte bağlı tablo denetleme diye bir konu gördüm. benim sorunumla alakalımıdır anlayamadım. yardımcı olabilirseniz sevinirim.

https://accesstr.net/konu-bagli-tablo-denetleme.html
Derzulya Merhaba,

Çalışman Access veritabanlı Excel uygulaması mıdır ? 

Eğer benim belirttiğim şekilde ise aşağıda size verdiğimiz kodu deneyiniz. 

VBA kütüphanesinden Microsoft Form 2.0 Libary seçmeniz gerektiğini hatırlatmak isterim.

baglan.Open "provider=Microsoft.ACE.OLEDB.12.0;data source =" & ThisWorkbook.Path & "\Database.accdb"
Derzulya,


Yada aşağıdaki kodu yazıp deneyiniz..


strTemplateLocation = ThisWorkbook.Path & "\origins" & "\efttalimat.docx"
(29/02/2020, 11:58)derzulya yazdı: [ -> ]Hazırladığım uygulamayı komple tüm dosyaları ile birlikte, anamakinamız üzerinde bir klasöre koydum


Merhaba, klasör ana makinada bulunuyorsa, bağlı tabloların bulunduğu yol olarak tanımlamalısınız. Kod içerisinde currentproject.path kodunu kullanmışsınız. Bu açtığınız Access uygulamasının bulunduğu dizindir. Tabloların bulunduğu makinanın yolunu bulmak için

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim sSQL  As String

sSQL = "SELECT MsysObjects.Name AS [ObjectName], MsysObjects.Database FROM MsysObjects WHERE (((MsysObjects.Name Not Like '~*') And (MsysObjects.Name Not Like 'MSys*')) AND (MsysObjects.Type=6)) ORDER BY MsysObjects.Name;"

    Set db = CurrentDb
    Set rs = db.OpenRecordset(sSQL, dbOpenSnapshot)
    With rs
        If .RecordCount <> 0 Then
        Metin1 = Left(rs![Database], InStrRev(rs![Database], "\"))
        End If
    End With


şeklinde kod kullanmalısınız. Bu kod Metin1 isimli metin kutusuna, tabloların bulunduğu veritabanının dizinini yazdırır. 


(04/03/2020, 16:46)Lenadro yazdı: [ -> ]ThisWorkbook.Path


Bu kodu Access içerisinde çalıştıramazsınız. Yukarıda belirttiğim gibi bunun karşılığı currentproject.path'dır. Sizin kod sanırım Excel için.
(04/03/2020, 17:47)ozanakkaya yazdı: [ -> ]
(29/02/2020, 11:58)derzulya yazdı: [ -> ]Hazırladığım uygulamayı komple tüm dosyaları ile birlikte, anamakinamız üzerinde bir klasöre koydum


Merhaba, klasör ana makinada bulunuyorsa, bağlı tabloların bulunduğu yol olarak tanımlamalısınız. Kod içerisinde currentproject.path kodunu kullanmışsınız. Bu açtığınız Access uygulamasının bulunduğu dizindir. Tabloların bulunduğu makinanın yolunu bulmak için

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim sSQL  As String

sSQL = "SELECT MsysObjects.Name AS [ObjectName], MsysObjects.Database FROM MsysObjects WHERE (((MsysObjects.Name Not Like '~*') And (MsysObjects.Name Not Like 'MSys*')) AND (MsysObjects.Type=6)) ORDER BY MsysObjects.Name;"

    Set db = CurrentDb
    Set rs = db.OpenRecordset(sSQL, dbOpenSnapshot)
    With rs
        If .RecordCount <> 0 Then
        Metin1 = Left(rs![Database], InStrRev(rs![Database], "\"))
        End If
    End With


şeklinde kod kullanmalısınız. Bu kod Metin1 isimli metin kutusuna, tabloların bulunduğu veritabanının dizinini yazdırır. 


(04/03/2020, 16:46)Lenadro yazdı: [ -> ]ThisWorkbook.Path


Bu kodu Access içerisinde çalıştıramazsınız. Yukarıda belirttiğim gibi bunun karşılığı currentproject.path'dır. Sizin kod sanırım Excel için.


tamamdır. teşekkür editorum.
Sn.ozanbey nokta atışı kısa ve öz çözümleriniz için teşekkür ederim
Sayfalar: 1 2