Sistem Kaynakları Aşıldı Hatası

incsoft

Altın Üye
Katılım
18 Ağustos 2009
Mesajlar
483
Excel Vers. ve Dili
2016
Arkadaşlar lisanslı olarak kullanmakta olduğum access sürümü Access 2010 ve bunu kullanma amacım sadece elimde bulunan 850.000 satır ve 35 sütundan oluşan dosyamı mdb formatına çevirmektir. Bunu da başka bir raporlama programında raporlama database dosyası olarak kullanmaktayım ancak nedense birkaç gündür "sistem kaynakları aşıldı" diye hata vermekte ne yaptıysam çözemedim. Access'e gerek kalmadan xlsx,xlsm formatlarını mdb yapmanın başka bir yolu yokmudur acaba?
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
9,396
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
Excel'de VBA ile yapılır, bilgisayarda Access yüklü olması gerekli değil ama, sizin PC'nin konfigürasyonu yetersizse aynı hatayı yine alırsınız...

.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
3,994
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
850 binlik dosya kapalı olmak şartıyla (açık olduğunda performans düşüşü görülebilir) ADO ile Access veritabanına bağlantı açarak aşağıdaki gibi sorgu Excel dosyasından alıp mdb/accdb dosyasına kendisi otomatik aktarır. Tabloyu kendisi oluşturur; kendiniz bir şey yapmanıza gerek yok.

Sorguyu yürüteceğiniz makro boş bir Excel dosyası olabilir.

SQL:
select * into newtbl
from [Sayfa1$]
in '' [EXCEL 12.0; DATABASE=C:\XLfiles\bigexcel.xlsx]
 
Son düzenleme:

incsoft

Altın Üye
Katılım
18 Ağustos 2009
Mesajlar
483
Excel Vers. ve Dili
2016
Excel'de VBA ile yapılır, bilgisayarda Access yüklü olması gerekli değil ama, sizin PC'nin konfigürasyonu yetersizse aynı hatayı yine alırsınız...

.
Elinizde önereceğiniz kodlar varmıdır efendim?
 

incsoft

Altın Üye
Katılım
18 Ağustos 2009
Mesajlar
483
Excel Vers. ve Dili
2016
850 binlik dosya kapalı olmak şartıyla (açık olduğunda performans düşüşü görülebilir) ADO ile Access veritabanına bağlantı açarak aşağıdaki gibi sorgu Excel dosyasından alıp mdb/accdb dosyasına kendisi otomatik aktarır. Tabloyu kendisi oluşturur; kendiniz bir şey yapmanıza gerek yok.

Sorguyu yürüteceğiniz makro boş bir Excel dosyası olabilir.

SQL:
select * into newtbl
from [Sayfa1$]
in '' [EXCEL 12.0; DATABASE=C:\XLfiles\bigexcel.xlsx]
Teşekkürler hocam deneyeceğim.
 

incsoft

Altın Üye
Katılım
18 Ağustos 2009
Mesajlar
483
Excel Vers. ve Dili
2016
Excel'de VBA ile yapılır, bilgisayarda Access yüklü olması gerekli değil ama, sizin PC'nin konfigürasyonu yetersizse aynı hatayı yine alırsınız...

.

AMD Ryzen 5 2400G 3.6GHZ , 16 GB RAM , 256 SSD yeterlimidir?
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
9,396
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
Konfigürasyonunuz iyi görünüyor, Access dosyanızda verdiği hatanın başka bir sebebi olmalı ....

.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
9,396
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
Bahsettiğiniz hatayı Acces dosyanızda siz ne yapınca veriyor?

Belki dosyayı "Compact and Repair" yapmanız yararlı olabilir....

.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
9,396
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
Excel dosyanızın bir bölümünü eklerseniz, forum üyeleri deneme yaparak size yardımcı olabilirler ..... başka türlü yardım almanız zor.

.
 

incsoft

Altın Üye
Katılım
18 Ağustos 2009
Mesajlar
483
Excel Vers. ve Dili
2016
Excel dosyanızın bir bölümünü eklerseniz, forum üyeleri deneme yaparak size yardımcı olabilirler ..... başka türlü yardım almanız zor.

.



Dosyanın formatı bu ancak elimdeki dosya 900.000 satırlık ve veri dolu ve 150 mb olduğundan örnek olarak bu şekilde gönderdim hocam.
 

Ekli dosyalar

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
9,396
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
@Zeki Gürsoy 'un yukarıda 3 No'lu mesajda size verdiği kodu denediniz mi?

O kodu ben şöyle kullandım;

1) Bende MS Access olmadığı için arşivimdeki Test.mdb dosyası ile verilerinizin olduğu Excel dosyasını (ORNEK.xlsx) bilgisayarda C:\TestFolder klasörüne yerleştirdim.

2) Yeni bir Excel dosyası açıp, Zeki Beyin kodunu aşağıdaki şekilde monte ettim;

📌
JavaScript:
Sub Test()
    Dim adoConn As Object

    Set adoConn = CreateObject("ADODB.Connection")

    adoConn.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=C:\TestFolder\Test.mdb; Persist Security Info=False"
    adoConn.Execute "Select * into newtbl from [Sheet1$] in '' [EXCEL 12.0; DATABASE=C:\TestFolder\ORNEK.xlsx]"
    adoConn.Close
    Set adoConn = Nothing
End Sub

Kodun olduğu Excel dosyasını ve MDB dosyasını ekliyorum, siz Access ile MDB dosyasını açıp, içindekileri kontrol edersiniz.... MDB dosyasında newtbl adında bir tabloda sizin verilerin olması gerekir...

.
 

Ekli dosyalar

Son düzenleme:

incsoft

Altın Üye
Katılım
18 Ağustos 2009
Mesajlar
483
Excel Vers. ve Dili
2016
@Zeki Gürsoy 'un yukarıda 3 No'lu mesajda size verdiği kodu denediniz mi?

O kodu ben şöyle kullandım;

1) Bende MS Access olmadığı için arşivimdeki Test.mdb dosyası ile verilerinizin olduğu Excel dosyasını (ORNEK.xlsx) bilgisayarda C:\TestFolder klasörüne yerleştirdim.

2) Yeni bir Excel dosyası açıp, Zeki Beyin kodunu aşağıdaki şekilde monte ettim;

📌
JavaScript:
Sub Test()
    Dim adoConn As Object

    Set adoConn = CreateObject("ADODB.Connection")

    adoConn.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=C:\TestFolder\Test.mdb;" & "Persist Security Info=False"
    adoConn.Execute "Select * into newtbl from [Sheet1$] in '' [EXCEL 12.0; DATABASE=C:\TestFolder\ORNEK.xlsx]"
    adoConn.Close
    Set adoConn = Nothing
End Sub

Kodun olduğu Excel dosyasını ve MDB dosyasını ekliyorum, siz Access ile MDB dosyasını açıp, içindekileri kontrol edersiniz.... MDB dosyasında newtbl adında bir tabloda sizin verilerin olması gerekir...

.
Teşekkürler hocam bu işimi görecek gibi. Dosyalarıma göre revize edip denedim oldu database yapısını bozmadığına emin olursam bunu kullanırım daha hızlı oluyor çünkü.
 
Üst