• DİKKAT

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

bir sayfadan diğer sayfaya koşullu veri aktarma

Katılım
8 Mart 2006
Mesajlar
317
Excel Vers. ve Dili
EXCEL-2013
Değerli üstad arkadaşlar göndermiş olduğum dosyada data sayfasındaki
belli statüde personelin bordro sayfasına statü seçimine göre bilgilerinin
aktarılması
bu konuda yardımlarınıza ihtiyacım var
yardımcı olacağınız ümidiyle
hepinize kolay gelsin
 

Ekli dosyalar

Son düzenleme:
Değerli üstad arkadaşlar göndermiş olduğum dosyada data sayfasındaki
belli statüde personelin bordro sayfasına statü seçimine göre bilgilerinin
aktarılması
bu konuda yardımlarınıza ihtiyacım var
yardımcı olacağınız ümidiyle
hepinize kolay gelsin
Merhaba VBA şifresi olmasa da Comboda düzenleme yapıp ona göre işlem yapsaydık:) neyse açılır liste ile yapmaya çalışalım.
 
farkına varmadan VB şifreli göndermişim şifresini kadırdım..
 
istediğim comboboxta seçmiş alacağımız "4/B" ve "4/C" statüsündeki herhangi stü secildiğinde
data sayfasındaki o satüye ait personelin sıralanması7
D stunu "4/B" lere Mahsus e stunu ise "4/C" lere ait olduğu için
ilgili olmayan stun gizlensin (D veya E stunu)
 
istediğim comboboxta seçmiş alacağımız "4/B" ve "4/C" statüsündeki herhangi stü secildiğinde
data sayfasındaki o satüye ait personelin sıralanması7
D stunu "4/B" lere Mahsus e stunu ise "4/C" lere ait olduğu için
ilgili olmayan stun gizlensin (D veya E stunu)
Merhaba
Comboyu B1 olarak ayarlayın yada B1 4/B 4/C yazarak kodu butona atayın deneyin
Kod:
Sub Kosul_Sorgu()
If Range("B1") = "4/B" Then
Columns("E:E").Select '4/b
Selection.EntireColumn.Hidden = True 'gizle

Columns("D:D").Select
Selection.EntireColumn.Hidden = False 'göster
Else
Columns("E:E").Select
Selection.EntireColumn.Hidden = False 'göster

Columns("D:D").Select '4/c
Selection.EntireColumn.Hidden = True 'gizle
End If
End Sub
 
ilginize teşekür ederim stun gizlemeyle ilgili göndermiş olduğunuz kodu
biraz değiştirerek uyguladım ilgili örnek dosya değiştirdim ilgilenrseniz
bakabilirsiniz
ancak
asıl mesele personel statüsüne göre toblaya sıralamak
bu konuda üstad arkadaşların yardımlarını bekliyorum
 
istediğim comboboxta seçmiş alacağımız "4/B" ve "4/C" statüsündeki herhangi stü secildiğinde
data sayfasındaki o satüye ait personelin sıralanması7
D stunu "4/B" lere Mahsus e stunu ise "4/C" lere ait olduğu için
ilgili olmayan stun gizlensin (D veya E stunu)

Merhaba Sayın taseraydin,

Sayın Black Lord cevaplamış buda hem listeleme hemde gizleme bir arada olan kodlar.

Diğer açtığınız başlığı iş temposundan atlamışım, bu konuyu görünce hatırladım. Geçikme için kusura bakmayın.

Kod:
Private Sub ComboBox1_Change()
Dim c As Range, ilkadres As Variant, Sd As Worksheet, sat As Long
Set Sd = Sheets("DATA")
Application.ScreenUpdating = False
Cells.EntireColumn.Hidden = False
Range("A7:E65536").ClearContents
sat = 7
With Sd.Range("D:D")
    Set c = .Find(ComboBox1.Value, , LookIn:=xlValues)
    If Not c Is Nothing Then
        ilkadres = c.Address
        Do
            Range("A" & sat) = sat - 6
            Sd.Range("B" & c.Row & ":C" & c.Row).Copy Range("B" & sat)
            Sd.Range("F" & c.Row & ":G" & c.Row).Copy Range("D" & sat)
            sat = sat + 1

            Set c = .FindNext(c)
        Loop While Not c Is Nothing And c.Address <> ilkadres
    End If
End With
Columns(5 - ComboBox1.ListIndex).EntireColumn.Hidden = True
Application.ScreenUpdating = True
End Sub
.
 
ilginize gerçekten çok teşekür ederim.
elinize sağlık
yine ilginize güvenerekten VE SUİSTİMAL ETMEDEN
BİR İSTEĞİM DAHA OLACAK..

TABLOYU YAZDIMAYA KALKSAM..
TABLO 40 SATIRLIK ŞAYET TABLOYA GELECEK PERSONEL 40 TANE DEN FAZLA İSE TABLO BİRÖNCE GERCEKLEŞEN TABLONUN BAKİYELERİNİ NAKLİ YEKÜNE VEREREK TEKRARLASIN

AYRICA Black Lord A ÇOK TEŞEKÜR EDERİM
 
ilginize gerçekten çok teşekür ederim.
elinize sağlık
yine ilginize güvenerekten VE SUİSTİMAL ETMEDEN
BİR İSTEĞİM DAHA OLACAK..

TABLOYU YAZDIMAYA KALKSAM..
TABLO 40 SATIRLIK ŞAYET TABLOYA GELECEK PERSONEL 40 TANE DEN FAZLA İSE TABLO BİRÖNCE GERCEKLEŞEN TABLONUN BAKİYELERİNİ NAKLİ YEKÜNE VEREREK TEKRARLASIN

AYRICA Black Lord A ÇOK TEŞEKÜR EDERİM
Ben sanırım farklı yoldan ve karışık bir seçimle cevapladım. Ömer beyin çalışmasında bende faydalanacağım.
buna benzer bir çalışma bende de var ordan uyarlamıştım.
İyi çalışmalar
 
Tabloyu yazdımaya kalksam..
Tablo 40 satırlık şayet tabloya gelecek personel 40 tane den fazla ise tablo birönce gercekleşen tablonun bakiyelerini nakli yeküne vererek tekrarlayabilirmi
 

Ekli dosyalar

40 satırda bir ara toplam satırı mı istiyorsunuz.

.
 
Bu şekilde denermisiniz.

Kod:
Private Sub ComboBox1_Change()
Dim c As Range, ilkadres As Variant, Sd As Worksheet
Dim ilk As Long, sat As Long, i as Long
Set Sd = Sheets("DATA")
Application.ScreenUpdating = False
Cells.EntireColumn.Hidden = False
Range("A8:E65536").ClearContents
sat = 8
With Sd.Range("D:D")
    Set c = .Find(ComboBox1.Value, , LookIn:=xlValues)
    If Not c Is Nothing Then
        ilkadres = c.Address
        Do
            Range("A" & sat) = sat - 7
            Sd.Range("B" & c.Row & ":C" & c.Row).Copy Range("B" & sat)
            Sd.Range("F" & c.Row & ":G" & c.Row).Copy Range("D" & sat)
            sat = sat + 1
            Set c = .FindNext(c)
        Loop While Not c Is Nothing And c.Address <> ilkadres
    End If
End With
    For i = Cells(Rows.Count, "B").End(xlUp).Row To 8 Step -1
        If (i - 7) Mod 40 = 0 Then
            Rows(i).Insert Shift:=xlDown
            With Cells(i, "B")
                .Value = "Ara Toplam"
                .Font.ColorIndex = 3
                .Font.Bold = True
                .Font.Size = 8
            End With
            If i = 47 Then
                ilk = i - 39
            Else
                ilk = i - 40
            End If
            Cells(i, "F").Formula = "=Sum(F" & ilk & ":F" & i - 1 & ")"
            Cells(i, "G").Formula = "=Sum(G" & ilk & ":G" & i - 1 & ")"
            Cells(i, "H").Formula = "=Sum(H" & ilk & ":H" & i - 1 & ")"
            Cells(i, "I").Formula = "=Sum(I" & ilk & ":I" & i - 1 & ")"
        End If
    Next i
Columns(5 - ComboBox1.ListIndex).EntireColumn.Hidden = True
Application.ScreenUpdating = True
End Sub
 
Birleştirdiğiniz hücrelerden kaynaklanıyor.

Range("A8:E65536").ClearContents

Kırmızı parçayı silerek deneyiniz.

.

 
elinize sağlık
ancak zannedersem ben istediğimi tam anlatamadım,
----
40 satırdaki amaç elimzide bulunan bir tablonun içine
yazdırmak
yani veriler
örneğin 100 adet ise
40 satırlık hazırlanmış tabloya ilk 40 satırı yazacak
ilk Tablonun bakiyesini üsteki devreden bakiyeye devredip ikinci işlemde 40 ile 80 ninci satır aralığını yazacak bu en son veriye kadar devam edecek,
 

Ekli dosyalar

Son düzenleme:
Geri
Üst