• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Kapalı Dosyaya Veri Yollamak

Katılım
12 Ocak 2009
Mesajlar
74
Excel Vers. ve Dili
2003-2007
Selam.Yardımsever bir Hocam vasıtası ile "Günlük rapor" çalışması hazıladım.Fakat bazı yapamadığım düzenlemeler var.Yardımcı olacak Hocalarım olursa müteşekkir olacağım.
1. GÜNLÜK ÇALIŞMA RAPORUNA VERİLERİ GÜNLÜK OLARAK HER GÜN GİRİYORUM.DAHA SONRA AYLIK RAPOR KLASÖRÜNDEKİ “MAYIS “İSİMLİ DOSYAYA GEREKLİ VERİLERİ MAKRO VASITASI İLE YOLLUYOR.

2. “AYLIK RAPOR” KLASÖRÜNDEKİ “MAİL” İSİMLİ DOSYAYA DA BİLGİLERİ MAKRO İLE GÖNDEREBİLİYORUM FAKAT BİR TÜRLÜ “AYLIK KLASÖRÜNDEKİ” “BAĞ.MAL.MİK” SAYFASINDA BULUNAN MİKTARLARI MAKRO İLE YOLLAYAMIYORUM.”MAİL “İSİMLİ SAYFA YA AÇIKLAMALARI YAZDIM KIRMIZI YAZI İLE İŞARETLEDİM.

3. YALNIZ MAKRO NUN “GÜNLÜK ÇALIŞMA RAPORU” SAYFASINDAN ÇALIŞMASINI İSTİYORUM.”MAİL” İSİMLİ SAYFADA MAKRO OLMIYACAK.”GÜNLÜK ÇALIŞMA RAPORU” KAPATILIRKEN VERİLER GEREKLİ YERLERE GİDECEK.


4. BİRDE GÜNLÜK RAPORU YAPIP KAPATINCA ARADA SIRADA “MAİL” SAYFASINA BİLGİLER HEMEN GELMİYOR.MAKROLAR BAZEN ÇALIŞMIYOR.Acaba pc de ayrı dosyalar ayrı ayrı yerlerde diye mi oluyor?GÜNLÜK RAPORU AÇIP TEKRAR KAPATINCA BİLGİLER GELİYOR.
 

Ekli dosyalar

Merhaba

"mayıs" adlı dosyadaki bulunan sayfa adı " bag.mal.Mik." şeklinde "bag" dan önce boşluk var kod yazarken bu boşluklarda önemlidir.



Kod:
Sub yolla()
Dim ds As Variant

 'ds = "c:\aylık rapor\mail" & ".xls"
 
ds = ThisWorkbook.Path & "\aylık rapor\mail" & ".xls"
Set ds2 = New Excel.Application
ds2.Workbooks.Open ds
ds2.Workbooks(Dir(ds)).Sheets("1").Range("b4:b6").Value = Range("ı5:ı7").Value  'betonu kalıplanan
ds2.Workbooks(Dir(ds)).Sheets("1").Range("d4:d6").Value = Range("k5:k7").Value 'bozulan
ds2.Workbooks(Dir(ds)).Sheets("1").Range("b11:e13").Value = Range("ı13:L15").Value 'yarı gerdirme
    
    'ds2.Workbooks(Dir(ds)).Sheets("1").Cells(11, 4).Value = [d11].Value 'yalnız gerdirme
  'ds2.Workbooks(Dir(ds)).Sheets("1").Cells(12, 4).Value = [d12].Value  'yalnız gerdirme
 'ds2.Workbooks(Dir(ds)).Sheets("1").Cells(13, 4).Value = [d13].Value 'yalnız gerdirme
 
ds2.Workbooks(Dir(ds)).Sheets("1").Range("a17:a18").Value = Range("g19:g20").Value 'sevkiyat
ds2.Workbooks(Dir(ds)).Sheets("1").Range("d17:e18").Value = Range("k19:L20").Value 'vagon adet
ds2.Workbooks(Dir(ds)).Sheets("1").Cells(20, 5).Value = [L22].Value 'aylık sevk miktarı
ds2.Workbooks(Dir(ds)).Sheets("1").Range("e25:e26").Value = Range("j47:j48").Value 'stok komple
ds2.Workbooks(Dir(ds)).Sheets("1").Cells(28, 5).Value = [J49].Value 'gerilmiş seletsiz
 For t = 1 To 14
 ds2.Workbooks(Dir(ds)).Sheets("1").Cells(37 + t, 1).Value = Cells(25 + t, 8).Value 'sevk yerleri
  ds2.Workbooks(Dir(ds)).Sheets("1").Cells(37 + t, 5).Value = Cells(25 + t, 12).Value 'sevk yerleri mik.
 Next
 ds2.Workbooks(Dir(ds)).Sheets("1").Cells(2, 5).Value = [J3].Value 'tarih
   
   trh = Format([J3], "mmmm")
   For d = 0 To 5
ds2.Workbooks(Dir(ds)).Sheets("1").Cells(30 + d, 5).Value = ExecuteExcel4Macro("'" & ThisWorkbook.Path & "\aylık rapor\[" & trh & "]bag.mal.Mik.'!R35C" & d + 2)
Next
   
  ds2.Workbooks(Dir(ds)).Close SaveChanges:=True
ds2.Quit
Set ds2 = Nothing
   'Exit Sub
End Sub
 
Son düzenleme:
Sayın Hocam teşekkürler.Yazdığınız kodu uyguladım.Sonuç mükemmel.Allah razı olsun.Emeğine sağlık.Yalnız sormak istedğim bir şey daha olacak:
1-Benim PC de bu klasörler ayrı ayrı bölümlerde bulunuyor.Mesela biri "D" bölümünde biri"C" bölümündeki klasörlerde.Ben bunları tabi kodları değiştirirerek tanıtıyorum.
Bazen "MAİL" isimli sayfa verileri almamış oluyor.Güncellenmemiş ve hücrelerede başka başka veriler gelmiş oluyor.Hiç alakası olmayan.Ben "Günlük Çalışma Raporunu" açıp kapatınca her şey normale dönüyor.Bunun sebebi ne olabilir acaba?
Birde şu kodun açıklamasını yapabilirmisiniz acaba? trh = Format([J3], "mmmm")
For d = 0 To 5
ds2.Workbooks(Dir(ds)).Sheets("1").Cells(30 + d, 5).Value = ExecuteExcel4Macro("'" & ThisWorkbook.Path & "\aylık rapor\[" & trh & "]bag.mal.Mik.'!R35C" & d + 2)
Next
özelliklede: ExecuteExcel4Macro("'" & ThisWorkbook.Path & "\aylık rapor\[" & trh & "]bag.mal.Mik.'!R35C" & d + 2)
kısmını.Bu şekilde ben bu kodu diğer yazmış olduğum uzun uzadıya giden kodlara da uygulayabilirmiyim o yüzeden soruyorum.Çünkü o kadar çok kod var ki.Benim eklediğim dosyadakiler yalnızca kodların bir kısmını oluşturuyor.
Ayrıca dediğiniz gibi makrolar en ufak hatayı affetmiyor.Bir boşluk olsa bile kod çalışmıyor.
Teşekkürler.Saygılar.
 
Sayın Hocam teşekkürler.Yazdığınız kodu uyguladım.Sonuç mükemmel.Allah razı olsun.Emeğine sağlık.Yalnız sormak istedğim bir şey daha olacak:
1-Benim PC de bu klasörler ayrı ayrı bölümlerde bulunuyor.Mesela biri "D" bölümünde biri"C" bölümündeki klasörlerde.Ben bunları tabi kodları değiştirirerek tanıtıyorum.
Bazen "MAİL" isimli sayfa verileri almamış oluyor.Güncellenmemiş ve hücrelerede başka başka veriler gelmiş oluyor.Hiç alakası olmayan.Ben "Günlük Çalışma Raporunu" açıp kapatınca her şey normale dönüyor.Bunun sebebi ne olabilir acaba?

Yukarıdaki kodlardan dolayı bir sorun göremedim.

"ExecuteExcel4Macro" yöntemini dışveri almakta kullanabilirsiniz
kodları kısaltmak için döngü ve dosyanızdaki gibi tek hücre seçerek değilde; (yukarıdaki örnekte olduğu gibi) hücre aralığı seçerek deneyin.
 
Hocam sanırım sorunu anladım.Sorun makroların(modül 4 teki) sıralamasından kaynaklanıyor sanırım .Bendeki asıl dosyadaki sıralamayı değişince sorun yok gibi görünüyor.Bir kaç deneme yaptım şu an için sorun yok.Gayet güzel çalışıyor.
Saygılar.Teşekkürler.
 
Geri
Üst