• DİKKAT

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

Sayfalar Arası Makro ile Veri Çekme Yazdırma!

Katılım
3 Nisan 2008
Mesajlar
22
Excel Vers. ve Dili
macro ve excel lazım acıl
Merhabalar Arkadaşlar,

Öncelikle herkese merhabalar, formun sürekli ziyaretçisi ve en enterasan sorular soran uğraşamayıp yardım isteyen ve her seferinde yardımlarını eksik etmeyen siz değerli www.excel.web.tr arkadaşlarım sizlere bir kaç sorum olacak ve eğer bu proje gerçek olursa günde 300 sayfa yazıdan ve iş yükünden kurtulacağım ama yardımlarınızı rica ediyorum. Sorularımı aşağı doğru sıralıyacağım ama sorularımı okumadan aynı anda ekte göndermiş olduğum excel dosyasını açarsanız beni daha rahat anlarsınız gibi geliyor. Sorularıma Başlıyorum.

1- Öncelikleri verileri programımdan çekiyorum ve excele " VERILER " sayfası dediğim bölüme kopyalıyorum.
2- Sonra " Cari Kart Kayıt " sayfasını açıyorum.
3- Veriler sayfasında verilen verilerden " SIRA " ile A2 sütünundaki veriyi ordan alıyorum ( keserek alırsak daha iyi olur neyi aldığımı kalanı görebilirim) cari kart kayıt bölümünde en üste " Cari Hesap Kodu Bölümüne " yapıştırıyorum.
4- Sonra tekrar veriler sayfasına gidip B2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Firma Ünvanı " denen bölüme yapıştırıyoruz.
5- Sonra tekrar veriler sayfasına gidip C2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " ADRES " denen bölüme yapıştırıyoruz.
6- Sonra tekrar veriler sayfasına gidip H2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " SEMT ( Yazılmış ise alıyoruz ) " denen bölüme yapıştırıyoruz.
7- Sonra tekrar veriler sayfasına gidip I2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında "TELNO " denen bölüme yapıştırıyoruz.
8- Sonra tekrar veriler sayfasına gidip J2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında "FAXNO " denen bölüme yapıştırıyoruz.
9- Sonra tekrar veriler sayfasına gidip D2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında "VERGİ NO / TC KİMLİK NO. " denen bölüme yapıştırıyoruz.
10- Sonra tekrar veriler sayfasına gidip E2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında "VERGİ DAİRESİ " denen bölüme yapıştırıyoruz.
11- Cari Kart Kayıt bölümünde " Ticari Bilgiler " ve en zor bölüme geldik burda yazıları çevirmesi lazım misal örneğimdede göreceğiniz gibi Veriler sayfasında C2 sütununda yazan " 60 GÜN VADELİ ÖDEME " yi cari kartlar sayfasında benim yapmış olduğum gibi yapması gerekmektedir.
12- Sonra tekrar veriler sayfasına gidip F2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında "RİSK LİMİTİ " denen bölüme yapıştırıyoruz.

Artık yapıştırma kesme işlemimiz bitti şimdi kontrol ettim ve yazdır dediğimde yazmasını istiyorum tüm sayfayı bir tek A4'e. Umarım anlatmayı başarabilmişimdir şimdi sizin desteğinize ihtiyacım var yardımlarınızı bekliyorum arkadaşlar.


Not: Sayfanın sonuna " Veri Aktar ve Yazdır " Butonları koydum eğer yapacağımız işlemin sonucu bu şekilde olursa yani veri aktara basıldığında verileri bir önceki sayfadan çebeliyor isek o zaman süper ötesi birşey olur. Şimdiden Emeği Geçen Bütün Arkadaşlarıma Teşekkür ederim.

Tekbirkere de yükleyim dedim ama olmadı mecburen böldüm arkadaşlar.
 

Ekli dosyalar

Merhaba,

Sorunuzu çok uzun tutmuşsunuz, fazla zamanım olmadığı için bazı kodları eksik yazdım, siz bunları örneğine bakarak devam ettirebilirsiniz.

Veriler Sayfasında Başlık satırı ile veriler arasında bir satır boş olması gerekmektedir, yani Veriler Sayfasının 2. satırı ilk aktarımda boş olmalıdır, sonra her aktarımda 3. satır, sonra 4. satır silinmektedir.

Kod:
Sub VeriAktar()
Dim i As Long
Dim Sc As Worksheet, Sv As Worksheet
Set Sc = Sheets("CARİ KART KAYIT (FORMULLÜ)")
Set Sv = Sheets("VERILER")
Sc.Select
Application.ScreenUpdating = False
i = Sv.[A1].End(4).Row
'----------------- İlgili Hücreleri Buraya Ekleyiniz -------------
[V10] = Sv.Cells(i, "A")
[K18] = Sv.Cells(i, "B")
[K24] = Sv.Cells(i, "G")
[J26] = Sv.Cells(i, "H")
'----------------- Hücre Aktarma Sonu -----------------------------
Sv.Rows(i).ClearContents
Application.ScreenUpdating = True
End Sub

Kod:
Sub Yazdır()
Sheets("CARİ KART KAYIT (FORMULLÜ)").PrintPreview
End Sub
 

Ekli dosyalar

Veriler ile alanlar birbirlerinden oldukça farklı. Eşitlenmesi durumunda kodlara ilaveler yapılması gerekli.

Kod:
Sub verial()
Dim sayfa As Worksheet, cari As Worksheet
Set sayfa = Sheets("VERILER")
Set cari = Sheets("CARİ KART KAYIT (FORMULLÜ)")
If sayfa.Cells(2, 1).Value <> Empty Then
With cari

    .Range("v10").Value = ""
    .Range("j36").Value = ""
    .Range("k24").Value = ""
    .Range("j26").Value = ""
    .Range("j32").Value = ""
    .Range("aa32").Value = ""
    .Range("k45").Value = ""
    .Range("r45").Value = ""
    .Range("y45").Value = ""

    .Range("v10").Value = sayfa.Cells(2, 1).Value
    .Range("j36").Value = sayfa.Cells(2, 2).Value
    .Range("k24").Value = sayfa.Cells(2, 4).Value
    .Range("j26").Value = sayfa.Cells(2, 5).Value
    .Range("j32").Value = sayfa.Cells(2, 6).Value
    .Range("aa32").Value = sayfa.Cells(2, 7).Value
    If sayfa.Cells(2, 3).Value Like "*PEŞİN*" Then
        .Range("k45").Value = "X"
    ElseIf sayfa.Cells(2, 3).Value Like "*VADELİ*" Then
        .Range("r45").Value = "X"
        Add = Mid(sayfa.Cells(2, 3).Value, 1, InStr(1, sayfa.Cells(2, 3).Value, " ", 1) - 1)
        .Range("y45").Value = Add
    End If
    sayfa.Rows(2).EntireRow.Delete
End With
Else
MsgBox "Aktarılacak veri kalmadı", vbInformation
End If
Set sayfa = Nothing
Set cari = Nothing
End Sub
 
Hocam Merhaba.

Merhabalar Hocam.

Sorularımı aşağı doğru sıralıyacağım ama sorularımı okumadan aynı anda ekte göndermiş olduğum excel dosyasını açarsanız beni daha rahat anlarsınız gibi geliyor. Sorularıma Başlıyorum.

1- Öncelikleri verileri programımdan çekiyorum ve excele " VERILER " sayfası dediğim bölüme kopyalıyorum.
2- Sonra " Cari Kart Kayıt " sayfasını açıyorum.
3- En yukarıya iki adet buton yerleştirdim. Biri verileri aktarmak için, diğeri ise sayfaya aktarılan verileri yazdırmak amacıyla.
4- " Cari Hesap Kodu " denen bölüme yazılan kod. " VERİLER " sayfasında aranacak ve bulununca bu şekilde sayadaya yazacak.
5- Sonra Veri aktar butonuna bastığımda Veriler sayfasında bulunan numaraya istinaden veriler gelmesi gereken bölüme gelecektir onları ise ekteki örneğimde bulabilirsiniz. Bu arada aktarılan veriler VERİLER sayfasında satır olarak Sarı,kırmızı,yeşil dikkat çekici renklere boyanabilirse hangi veriyi aktarıp yazıcıdan çıktı aldığımı görebilirim.
6- Sonra tekrar veriler sayfasına gidip B2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Firma Ünvanı ( K18 ) " denen bölüme yapıştırıyoruz.
7- Sonra tekrar veriler sayfasına gidip B2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Firmanın Tabela Ünvanı ( K20 ) " denen bölüme yapıştırıyoruz.
8- Sonra tekrar veriler sayfasına gidip B2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Firma Temsilcisi ( K22 ) " denen bölüme yapıştırıyoruz.
9- Sonra tekrar veriler sayfasına gidip G2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Adres ( K24 ) " denen bölüme yapıştırıyoruz.
10- Sonra tekrar veriler sayfasına gidip H2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Semt ( J26 ) " denen bölüme yapıştırıyoruz.
11- Sonra tekrar veriler sayfasına gidip I2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Telefon ( J32 ) " denen bölüme yapıştırıyoruz.
12- Sonra tekrar veriler sayfasına gidip I2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " GSM ( J34 ) " denen bölüme yapıştırıyoruz.
13- Sonra tekrar veriler sayfasına gidip E2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Vergi Dairesi ( J36 ) " denen bölüme yapıştırıyoruz.
14- Sonra tekrar veriler sayfasına gidip J2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Vergi Dairesi ( AA32 ) " denen bölüme yapıştırıyoruz.
15- Sonra tekrar veriler sayfasına gidip D2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında " Vergi Dairesi ( AA36 ) " denen bölüme yapıştırıyoruz.
16- Cari Kart Kayıt bölümünde " Ticari Bilgiler " ve en zor bölüme geldik burda yazıları çevirmesi lazım misal örneğimdede göreceğiniz gibi Veriler sayfasında C2 sütununda yazan " 60 GÜN VADELİ ÖDEME " yi cari kartlar sayfasında benim yapmış olduğum gibi yapması gerekmektedir.
12- Sonra tekrar veriler sayfasına gidip F2 satırını alıp ( kesip, aldığımız her satırı keserek alacağız ) cari kart kayıt sayfasında "RİSK LİMİTİ " denen bölüme yapıştırıyoruz.

Artık yapıştırma kesme işlemimiz bitti şimdi kontrol ettim ve yazdır dediğimde yazmasını istiyorum tüm sayfayı bir tek A4'e. Umarım anlatmayı başarabilmişimdir şimdi sizin desteğinize ihtiyacım var yardımlarınızı bekliyorum arkadaşlar.


Not: Sayfanın Başına " Veri Aktar ve Yazdır " Butonları koydum eğer yapacağımız işlemin sonucu bu şekilde olursa yani veri aktara basıldığında verileri bir önceki sayfadan çebeliyor isek o zaman süper ötesi birşey olur. Şimdiden Emeğine Teşekkür ederim.
 

Ekli dosyalar

Makro ile web sayfasından veri çekmek

Bu kadar soruyu yanıtlamak epey zor .)
 
Geri
Üst