• DİKKAT

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

Bir sayfadan başk sayfaya koşullu veri alma

Katılım
4 Eylül 2009
Mesajlar
40
Excel Vers. ve Dili
excell 2007 türkçe
Arkadaşlar Merhaba.

Sizlerden yardım istemekteyim. sitede aradım fakat istediğim gibi koşullu bir makro bulamadım.

ekli dosyamda, ad sütununda içinde "-" geçen satırları veri sayfasına aktarmak istiyorum.fakat bunu makro ile yapmak istiyorum çünkü 300 binden fazla satır var asıl listemde.

ben düşey ara ile deniyorum fakat makro ile daha hızlı ve hatasız olacaktır.

yardımlarınız için şimdiden çok teşekkür ederim.
 

Ekli dosyalar

Merhaba,

Aşağıdaki kodları bir modüle kopyalayınız.

Kod:
Sub Aktar()
Dim sa As Worksheet
Dim sv As Worksheet
Dim i As Long
Dim j As Long
Set sa = Sheets("anasayfa")
Set sv = Sheets("veri")
j = 1
sa.Select
For i = 2 To [A65536].End(3).Row
    If Cells(i, "A") Like "*-*" Then
        j = j + 1
        Range("A" & i & ":C" & i).Copy sv.Cells(j, "A")
    End If
Next i
MsgBox "Aktarım Bitmiştir...", vbInformation, "[URL="http://www.excel.web.tr/"]www.excel.web.tr[/URL]"
End Sub
 

Ekli dosyalar

Çok teşekkür ederim Necdet Bey. Kodunuz işime yarıyor.

Fakat istenilen verileri aktardıktan sonra, veriyi aldığı sayfadan yani anasayfa'dan silmemiz gerekiyor.Bunu yapabilir miyiz?
Birde kodu butona aktarmadan direkt çalıştırmamız mümkün müdür?

Yardımınız için tekrar teşekkür ederim.
 
Merhaba,

Bu durumda aşağıdaki kodları "anasayfa" nın kod bölümüne kopyalayınız.
Anasayfa da herhangi bir hücreye çift tıklandığında çalışacaktır.

Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim sa As Worksheet
Dim sv As Worksheet
Dim i As Long
Dim j As Long
Set sa = Sheets("anasayfa")
Set sv = Sheets("veri")
sv.Range("A2:C65536").ClearContents
j = 1
sa.Select
For i = 2 To [A65536].End(3).Row
    If Cells(i, "A") Like "*-*" Then
        j = j + 1
        Range("A" & i & ":C" & i).Cut sv.Cells(j, "A")
    End If
Next i
Columns("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
MsgBox "Aktarım Bitmiştir...", vbInformation, "[URL="http://www.excel.web.tr/"]www.excel.web.tr[/URL]"
End Sub
 
Necdet Bey, maalesef çalışmıyor.

Söylediğiniz gibi anasayfanın kod bölümüne ekliyorum. fakat hiç bir işlem yapmıyor.
 
İlk yazmış olduğunuz kodda Range("A" & i & ":C" & i).Copy sv.Cells(j, "A") satırını Range("A" & i & ":C" & i).Cut sv.Cells(j, "A") olarak değiştirdiğimde istediğimi yapıyor. Yani ilk formülünüz işime yarıyor. fakat butona aktarmadan direkt çalıştırmak istiyorum.

bununla ilgili ne yapabiliriz acaba?
 
Merhaba,

kodları deneyerek gönderdim. Herhangi bir hücreye çift tıkladınız mı kodların çalışması için?
 

Ekli dosyalar

Necdet Bey çok teşekkür ederim. kodunuz çalışıyor ve istediğim işi yapıyor.

iyi günler diliyorum.
 
Birden fazla çalışma sayfasından veri süzme

Necdet bey merhaba,
"Sub Aktar()" macrosunu birden fazla (30 dan fazla) çalışma sayfasından veri süzmek için nasıl kullanabiliriz
 
bir sayfada yer alan koşullu verinin bulunduğu satır ve sütundaki verilerinin başka b

Merhaba,

Benim bir konuda yardıma ihtiyacım var.. Bu durum için makro önerebilir misiniz rica etsem.. Bir sayfada yer alan koşullu verinin bulunduğu satır ve sütundaki hücrelerdeki verilerin başka bir hücreye yazılması.. örnek vermek gerekirse;
Bir tablo düşünün. satırlarda sıra numarası yazılıyor. Sütunlarda ise firma isimleri. Bu firmaların çeşitli sıra numarasındaki malzemeler için verdikleri en düşük teklifleri bulunuyor. en düşük teklifi veren firmaların isimlerinin otomatik olarak bir hücrede görünmesini istiyoruz.

FİRMA - 1 FİRMA - 2 FİRMA - 3 FİRMA - 4
S.NO Birim fiy. Birim fiy. Birim fiy. Birim fiy.
1 48,00 40,00 45,00 50,00
2 5,00 4,50 4,20 5,00
3 65,00 75,00 70,00 75,00
4 1,00 0,90 1,10 0,85
5 3,00 3,29 4 5
6 27,00 34 30 29
7 110 94 90,00 104

Yazdırılmasını istediğimiz bilgi şu şekilde:

1. kalem malzeme FİRMA - 2
2.,7. kalem malzeme FİRMA - 3
3.,5.,6. kalem malzeme FİRMA - 1
4. kalem malzeme FİRMA - 4
 
Arkadaşlar,

Elimde internetten yenilenebilir veri çektiğim bir dosya var. Veriler bir aylık bir tablodan oluşuyor ve her gün bir defa yenileniyor.

Sorunum şu ki, bugünün verisini aldığımda en eski günün verisi siliniyor. Oysa ben, verilerin silinmesini istemiyorum.

Yeni veri geldiğinde satırı bir aşağı kaydırıp en eski veriyi de korumanın bir yolu var mı?
 
Geri
Üst