• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü Kapalı dosyadan sayfaları kopyalarken bazı sayfaları kopyalamıyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Ortak_Akıl

Yeni Üye
Katılım
1 Haz 2023
Mesajlar
225
Çözümler
23
Aldığı beğeni
106
Excel V
Office 2013 TR
Konu Sahibi
Selamün Aleyküm
Elimde "BİRLEŞTİR kapalı dosyalardan veri al " adlı bir dosya var.
bu dosyaya diğer data (1),data (2),data (3),data (4) dosyalarından aynı isimdeki sayfaları kopyalayıp biriktiriyor.
mesela:
data(1) dosyasından "Şubeyolu Onarımı Giriş " sayfasını kopyalıyor. "BİRLEŞTİR kapalı dosyalardan veri al " adlı dosyadaki "Şubeyolu Onarımı Giriş " sayfasına alt alta gelecek şekilde yapıştırıyor.
sonra
data(2) dosyasından "Şubeyolu Onarımı Giriş " sayfasını kopyalıyor. "BİRLEŞTİR kapalı dosyalardan veri al " adlı dosyadaki "Şubeyolu Onarımı Giriş " sayfasına alt alta gelecek şekilde yapıştırıyor.
sonra
data(3) dosyasından "Şubeyolu Onarımı Giriş " sayfasını kopyalıyor. "BİRLEŞTİR kapalı dosyalardan veri al " adlı dosyadaki "Şubeyolu Onarımı Giriş " sayfasına alt alta gelecek şekilde yapıştırıyor.
data(4) dosyasından "Şubeyolu Onarımı Giriş " sayfasını kopyalıyor. "BİRLEŞTİR kapalı dosyalardan veri al " adlı dosyadaki "Şubeyolu Onarımı Giriş " sayfasına alt alta gelecek şekilde yapıştırıyor.
yaklaşık 20 adet sayfa var. ve yaklaşık 50 adet çeşitli isimlerde dosya adı var.
20 sayfanın 16 tanesini bütün dosyalardan alıp tek sayfada birleştirdiği halde
ŞubeYolu Yap. ve Ona. Giriş
Şeb. Bor. Ona. İdare Malı Giriş
Şeb. Bor. Ona. İdare Malı Giriş
Yangın Hidrantı Sökülmesi Giriş

isimli sayfaları hiçbir dosyadan kopyalamıyor. ve yapıştırmıyor.

sayfa isimleri birebir aynı olmasına rağmen(kontrol ettim bir kaç kere) neden kopyalamadığını bulamadım.

bir de klasörü değiştirmek için programdan değil de klasörü sorup seçerek yapılabilir mi.
herkese hayırlı günler dilerim.
ilgilenecek kardeşlere şimdiden teşekkür ederim.
 
Çözüm
Merhaba.

Kodlarda hata var ve büyük ihtimalle "On Error Resume Next" satırı olduğu için hata iletisi almıyorsunuz. varsa "On Error Resume Next" satırını silip hata veren satırı ve hata iletisini söyleyin.
sayın Alpi nin de belirttiği gibi "On Error Resume Next" olduğundan hatalar görülemiyor
birinci hatanız; sayfalar, tablo gibi değerlendirilir yani sayfa adlarında tablo adlarında kullanamayacağınız karakterleri kullanmamalısınız, kullanacaksanız da replace benzeri bir kod ile o karakterler değiştirilmeli
mesela siz sayfa adı olarak "ŞubeYolu Yap. ve Ona. Giriş" kullandınız tablo adları nokta içeremez . karakteri # ile değiştirilmeli
yani
strSQL = InputBox(" AKTARILACAK SAYFA ADINI...
Merhaba.

Kodlarda hata var ve büyük ihtimalle "On Error Resume Next" satırı olduğu için hata iletisi almıyorsunuz. varsa "On Error Resume Next" satırını silip hata veren satırı ve hata iletisini söyleyin.
 
Merhaba.

Kodlarda hata var ve büyük ihtimalle "On Error Resume Next" satırı olduğu için hata iletisi almıyorsunuz. varsa "On Error Resume Next" satırını silip hata veren satırı ve hata iletisini söyleyin.
sayın Alpi nin de belirttiği gibi "On Error Resume Next" olduğundan hatalar görülemiyor
birinci hatanız; sayfalar, tablo gibi değerlendirilir yani sayfa adlarında tablo adlarında kullanamayacağınız karakterleri kullanmamalısınız, kullanacaksanız da replace benzeri bir kod ile o karakterler değiştirilmeli
mesela siz sayfa adı olarak "ŞubeYolu Yap. ve Ona. Giriş" kullandınız tablo adları nokta içeremez . karakteri # ile değiştirilmeli
yani
strSQL = InputBox(" AKTARILACAK SAYFA ADINI GİRİN :") ' sayfa adı ==>"ŞubeYolu Yap. ve Ona. Giriş"
strSQL = Replace(strSQL, ".", "#") '<== bu satır eklenmeli
strSQL = "SELECT * FROM [" & strSQL & "$]"

2. hata ise girilen sayfa adı her dosyada olmayabiliyor girdiğiniz sayfa adı ilgili excel dosyasında yoksa veri alamaz
 
Son düzenleme:
Çözüm
eklediğiniz 4 dosyada da "Yangın Hidrantı Sökülmesi Giriş" bu ada sahip sayfa yok
 
Konu Sahibi
1-dosya resimlerinde görüldüğü üzere 35 adet dosya bulunmaktadır. bazı dosyalarda "Yangın Hidrantı Sökülmesi Giriş" bulunmamaktadır. bu sebeple bir dosyada bulunmadığında hata verip durmaması için "On Error Resume Next" ekledim.
2-yukarıda belirttiğiniz şekilde "On Error Resume Next" kaldırarak çalıştırdım. "ŞubeYolu Yap. ve Ona. Giriş" girerek çalıştırdım.
resimde görüldüğü şekilde hata verdi.

strSQL = InputBox(" AKTARILACAK SAYFA ADINI GİRİN :") ' sayfa adı ==>"ŞubeYolu Yap. ve Ona. Giriş"
strSQL = Replace(strSQL, ".", "#") '<== bu satır eklenmeli

strSQL = "SELECT * FROM [" & strSQL & "$]"

ekledim. hata düzeldi.
Alpi ve halily teşekkür ederim.
 
Rica ederim, iyi çalışmalar)
Not: On error resume next yerine ilgili sayfanın ilgili excel dosyasında olup olmadığı kontrol edilerek hata yapması engellenebilir
Ek bir işlem gerçekleştirdiği için belki performans kaybı yaşanabilir ama en azından hata vermeden çalışırdı yada hata farklı bir şeyden kaynakalniyorsa hata görülebilirdi.
Yada on error goto hata gibi bir kod ile hata mesajının, kodun çalışması engellenmeden, en sonda verilmesi sağlanabilir
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst