ikinci kitabı kapatma hk.

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Dosyaları manuel olarak açarsam yine adodaki gibi dosyayı yine açıyor fakat "con.close" da hataya düşüyor.

O satırı silmeniz gerekiyor, eski kodları modifiye ederken yanlışlıkla kalmış...

.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Sildim fakat yine sonuç aynı ,
Kapalı olduğunda hataya düşüyor.
manuel olarak dosyaları açarsam da açık kalıyor.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Dosyaları görmediğim için bir şey diyemeyeceğim ....

Kolay gelsin,

.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,334
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Exceli her açtığımda farklı uygulamada birbirinden bağımsız açması için kurmuştum
Geçen hafta İngilizce bir sayfada (bağlantıyı hatırlamıyorum) okuduğum kadarıyla bunun için registry içinde küçük bir ayar yeterli oluyor.

Açık olan bir dosya üzerinde ADO/DAO kullanmak ne kadar gerekli, o da ayrı bir konu...
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Geçen hafta İngilizce bir sayfada (bağlantıyı hatırlamıyorum) okuduğum kadarıyla bunun için registry içinde küçük bir ayar yeterli oluyor.

Zeki Bey, bahsettiğiniz konu aşağıdaki linkte anlatılmış.... (2013 ve üzeri versiyonlar için)

Ama, her Excel oturumuna 2 GB RAM ayrıldığı için özellikle 32 Bit versiyonlarda klasik "Hafıza yetersiz" uyarısıyla karşılaşma olasılığının yüksek olduğu belirtiliyor.

https://support.microsoft.com/tr-tr/help/3165211/how-to-force-excel-to-open-in-a-new-instance-by-default (Türkçe)

https://support.microsoft.com/en-ca/help/3165211/how-to-force-excel-to-open-in-a-new-instance-by-default (İngilizce)

.
 
Son düzenleme:
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Geçen hafta İngilizce bir sayfada (bağlantıyı hatırlamıyorum) okuduğum kadarıyla bunun için registry içinde küçük bir ayar yeterli oluyor.
easyfix dosyası da registry içerisinde değişiklik yapıyor hatta eskisini masaüstüne atıyor .Fakat geri yükleyince dosyaların bazılaı açılmıyor. Office onar seceğini kullanıp yeniden başlatınca düzeliyor. Eski haline geliyor.

Açık olan bir dosya üzerinde ADO/DAO kullanmak ne kadar gerekli, o da ayrı bir konu...
Aslında açmadan çekebilsem güzel olacak fakat dosya açılmadan ado veileri çekmiyor. Ado kullanmasam veri ve koşul çok işlem zaman alıyor
 
Son düzenleme:
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Zeki Bey, bahsettiğiniz konu aşağıdaki linkte anlatılmış.... (2013 ve üzeri versiyonlar için)

Ama, her Excel oturumuna 2 GB RAM ayrıldığı için özellikle 32 Bit versiyonlarda klasik "Hafıza yetersiz" uyarısıyla karşılaşma olasılığının yüksek olduğu belirtiliyor.

https://support.microsoft.com/tr-tr/help/3165211/how-to-force-excel-to-open-in-a-new-instance-by-default (Türkçe)

https://support.microsoft.com/en-ca/help/3165211/how-to-force-excel-to-open-in-a-new-instance-by-default (İngilizce)

.
2010 verisyonu kullanıyorum işyerinde , easyfixden sonra dosyaların açılışında bir sıkıntı olmadı hatta birbirinden bağımsız çalıştığı için çok hoşuma gitti ve işime yaradı. Ancak dediğim gibi veri alacağım sayfaların salt okunur açılıp kapanmaması beni sıkıntıya soktu. Ne yaptımsa sonuç alamadım. Hatta görev yöneticisinden açık olan uygulamayı bulup kapatmayı bile denedim : sonuç exe sonlandığı için o da hüsran oldu.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Aklıma gelen bir ihtimal de ADO bağlantısını sadece 1 kereliğine açmak ve her seferinde RS=Nothing ile RecordSet nesnesini hafızadan boşaltmak ....

Aşağıdakini dener misiniz?

Kod:
Sub DETAYCEK_2()
    Dim Con As Object, Rs As Object, Sorgu As String
  
    dosya_yolu = Left(ThisWorkbook.Path, InStr(ThisWorkbook.Path, "\Kullanıcılar")) & "BABSDETAY.xls"
  
    If Dir(dosya_yolu) = Empty Then
        MsgBox dosya_yolu & " bulunamadı!"
        Exit Sub
    End If
  
    Set Con = CreateObject("Adodb.Connection")
    Set Rs = CreateObject("Adodb.RecordSet")

    babs = Cells(ActiveCell.Row, "A")
    If babs = "BA" Then babs = "A"
    If babs = "BS" Then babs = "B"

    vergino = Replace(Cells(ActiveCell.Row, "D") & Cells(ActiveCell.Row, "E"), " ", "")

    Set ERP = Sheets("DETAY")
    ERP.Cells.ClearContents
  
    Con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
             dosya_yolu & ";extended properties=""excel 12.0;hdr=NO;IMEX=1"""
          
    Sorgu = "Select F10,F2,F8,F7,F12,F13,F14 from [Detay$] WHERE F1 = '" & _
            babs & "' AND F3 = '" & vergino & "' ORDER BY F10"
    Rs.Open Sorgu, Con, 1, 1
        ERP.Range("A2").CopyFromRecordset Rs
    Rs.Close
    Set Rs = Nothing
  
    dosya_yolu = Left(ThisWorkbook.Path, InStr(ThisWorkbook.Path, "\Kullanıcılar")) & "BABSDETAY-MAĞAZA.xls"
  
    Sorgu = "Select F6,F5,F2,F3&F4,F7,F8,F9 from [Detay$] WHERE  F1 = '" & vergino & "' ORDER BY F6"
    Rs.Open Sorgu, Con, 1, 1
        ERP.Range("A" & ERP.Cells(Rows.Count, 1).End(3).Row + 1).CopyFromRecordset Rs
    Rs.Close
    Set Rs = Nothing
  
    Con.Close
    Set Con = Nothing
    Sorgu = ""
  
    UserForm3.Show
End Sub
.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Yarın deneyeceğim Haluk bey İşyerimdeki pc olduğu için Teamwiveri kapatmıştım dün.
Teşekkür ederim , Olumlu olumsuz buradan paylaşacağım.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Günaydın,
Veri çekilecek Dosya (BABSDETAY.XLS) kapalı olduğu için sorguda hata meydana geldi. Bu arada veri çekilecek dosyayı açmaya çalıştığımda salt okunur hatası veriyor.
Çok garip bir durum sanırım bunu aşamayacağım. Eğer bir çözüm bulabilsem sırf ayrı çalışma için tüm dosyalardaki kodlarımı düzenlemeye razıyım :)
1548652717275.png
 
Üst