Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 07-02-2018, 07:07   #1
matrix81
Altın Üye
 
Giriş: 09/09/2008
Şehir: İstanbul
Mesaj: 30
Excel Vers. ve Dili:
Ms Office Pro.Plus 2016 İngilizce
Varsayılan Farklı Sayfalardan Farklı Satırlardan Veri Alma

Merhaba,

Formül veya Makro ile aşağıdaki işlemi yapmak istiyorum.

"Sheet1" adlı sayfanın A1 hücresine, "Sheet2" deki A1 hücresini kopyala
"Sheet1" adlı sayfanın B1 hücresine, "Sheet2" deki A2 hücresini kopyala
"Sheet1" adlı sayfanın C1 hücresine, "Sheet2" deki A3 hücresini kopyala

"Sheet1" adlı sayfanın A2 hücresine, "Sheet2" deki A4 hücresini kopyala
"Sheet1" adlı sayfanın B2 hücresine, "Sheet2" deki A5 hücresini kopyala
"Sheet1" adlı sayfanın C2 hücresine, "Sheet2" deki A6 hücresini kopyala

ve bu şekilde Sheet2 deki A3500 hücresine kadar devam edecek.

Sheet2 deki verilerin tamamını Sheet1 e kopyaladıktan sonra Sheet3-4-5....Sheet50 ye kadar devam edecek..

Örnek;
"Sheet1" adlı sayfanın A1500 hücresine, "Sheet50" deki A3400 hücresini kopyala
"Sheet1" adlı sayfanın B1500 hücresine, "Sheet50" deki A3401 hücresini kopyala
"Sheet1" adlı sayfanın C1500 hücresine, "Sheet50" deki A3402 hücresini kopyala

ÖZET:
Kısaca yapmak istediğim, Ortalama 50 Sayfalık verileri tek bir sayfada birleştirmek.

İlgili excel dosyasıda ektedir.
Eklenmiş Dosyalar
Dosya Türü: xlsx KARTAL İŞLETMELER.xlsx (785.5 KB, 6 Görüntülenme)
__________________
Bilgi paylaştıkça çoğalır.
matrix81 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 07-02-2018, 09:23   #2
matrix81
Altın Üye
 
Giriş: 09/09/2008
Şehir: İstanbul
Mesaj: 30
Excel Vers. ve Dili:
Ms Office Pro.Plus 2016 İngilizce
Varsayılan

Aşağıdaki gibi bir şeye ihtiyacım var.


Sub SayfalarıListele()

Dim i As Integer, sat As Integer, sut As String

sut = "E" 'hangi sütuna sıralanacağı
sat = 2 'hangi satırdan başlayacağı

Range(sut & sat & ":" & sut & Rows.Count).ClearContents

For i = 1 To Worksheets.Count
Cells(sat, sut) = Sheets(i).Name
Cells(sat, "A") = Sheets(i).Range("A1")
Cells(sat, "B") = Sheets(i).Range("B1")
Cells(sat, "C") = Sheets(i).Range("C1")
Cells(sat, "D") = Sheets(i).Range("D1")
sat = sat + 1
Next i

End Sub
__________________
Bilgi paylaştıkça çoğalır.
matrix81 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 07-02-2018, 10:04   #3
alicimri
 
Giriş: 12/12/2015
Mesaj: 541
Excel Vers. ve Dili:
Ofis 2007
Varsayılan

Eğer Sheet1 ilk sekme ise ve veri alınmayacak sayfa yoksa aşağıdaki lod işinize yarayabilir, dosyanızı yedekleyerek deneyiniz.
Sub aktar()
say = 1
For e = 2 To Sheets.Count
For i = 1 To Sheets(e).Range("A" & Cells.Rows.Count).End(3).Row Step 3
Sheets(e).Range("A" & i & ":A" & i + 2).Copy
Sheets(1).Range("A" & say).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
say = say + 1
Next
Next
End Sub
alicimri Çevrimdışı   Alıntı Yaparak Cevapla
Eski 07-02-2018, 10:10   #4
matrix81
Altın Üye
 
Giriş: 09/09/2008
Şehir: İstanbul
Mesaj: 30
Excel Vers. ve Dili:
Ms Office Pro.Plus 2016 İngilizce
Varsayılan

Merhaba,

Aşağıdaki örneğin benzerine ihtiyacım var.
Sayfa1 Sayfa2 Sayfa3 ....Sayfa15 de A sutununda alt alta listelenmiş veriler var.

Bu verilerden;
A1 deki veri B1 e
A2 deki veri C1 e
A3 deki veri D1 e kopyalanacak ve

A4 deki veri B2 ye
A5 deki veri C2 ye
A6 daki veri D3 e kopyalanarak en alta kadar (4000 civarı bir satır var) devam edecek.

Ve tüm sayfalardaki verileri tek sayfada B,C,D sütünlarına kopyalamak istiyorum. Desteğinizi rica ederim.

Sub SayfalarıListele()

Dim i As Integer, sat As Integer, sut As String

sut = "E" 'hangi sütuna sıralanacağı
sat = 2 'hangi satırdan başlayacağı

Range(sut & sat & ":" & sut & Rows.Count).ClearContents

For i = 1 To Worksheets.Count
Cells(sat, sut) = Sheets(i).Name
Cells(sat, "A") = Sheets(i).Range("A1")
Cells(sat, "B") = Sheets(i).Range("B1")
Cells(sat, "C") = Sheets(i).Range("C1")
Cells(sat, "D") = Sheets(i).Range("D1")
sat = sat + 1
Next i

End Sub
__________________
Bilgi paylaştıkça çoğalır.
matrix81 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 07-02-2018, 10:15   #5
alicimri
 
Giriş: 12/12/2015
Mesaj: 541
Excel Vers. ve Dili:
Ofis 2007
Varsayılan

İlk mesajınızdaki anlatıma göre cevaplamıştım.
alicimri Çevrimdışı   Alıntı Yaparak Cevapla
Eski 07-02-2018, 10:24   #6
matrix81
Altın Üye
 
Giriş: 09/09/2008
Şehir: İstanbul
Mesaj: 30
Excel Vers. ve Dili:
Ms Office Pro.Plus 2016 İngilizce
Thumbs up Hızlı Çözüm

Harikasınız, teşekkür ederim.
Tam aradığım formül.


Alıntı:
alicimri tarafından gönderildi Mesajı Görüntüle
Eğer Sheet1 ilk sekme ise ve veri alınmayacak sayfa yoksa aşağıdaki lod işinize yarayabilir, dosyanızı yedekleyerek deneyiniz.
Sub aktar()
say = 1
For e = 2 To Sheets.Count
For i = 1 To Sheets(e).Range("A" & Cells.Rows.Count).End(3).Row Step 3
Sheets(e).Range("A" & i & ":A" & i + 2).Copy
Sheets(1).Range("A" & say).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
say = say + 1
Next
Next
End Sub
__________________
Bilgi paylaştıkça çoğalır.
matrix81 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 07-02-2018, 10:27   #7
matrix81
Altın Üye
 
Giriş: 09/09/2008
Şehir: İstanbul
Mesaj: 30
Excel Vers. ve Dili:
Ms Office Pro.Plus 2016 İngilizce
Varsayılan

Çok teşekkür ederim, tam 12 den vurdunuz. Bir buton oluşturup yazdığınız kodu aynen ekleyip çalıştırdım biraz uzun sürüyor dosya büyük olduğundan ama sonucu tam istediğim gibi. Elinize sağlık.
__________________
Bilgi paylaştıkça çoğalır.
matrix81 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 07-02-2018, 10:52   #8
matrix81
Altın Üye
 
Giriş: 09/09/2008
Şehir: İstanbul
Mesaj: 30
Excel Vers. ve Dili:
Ms Office Pro.Plus 2016 İngilizce
Varsayılan

Alıntı:
matrix81 tarafından gönderildi Mesajı Görüntüle
Harikasınız, teşekkür ederim.
Tam aradığım formül.
Bu formüle ek olarak hangi veriyi hangi sayfadan aldıysa o sayfa isminide yazsa tadından yenmez.

Teşekkürler,
__________________
Bilgi paylaştıkça çoğalır.
matrix81 Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 16:02


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım -- Beylikdüzü mali müşavir - Beylikdüzü mali müşavir - Lingerie - Dyeing Machine - Karton Bardak- Karton Bardak- Çorlu Dil Konuşma Terapisti- Çorlu Dil Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Konuşma Terapisti- Çorlu Özel Eğitim- Site Yönetimi- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Çorlu- Çorlu Araç Takip- Rampa- Çorlu İnternet Sitesi- Çorlu Sürücü Kursu- Şişli Avukat- Çorlu Etüt- İstanbul Botanik- Çorlu Sigorta- Kağıt Bardak- Kağıt Bardak- Çorlu Havuz- Çorlu Havuz- Çorlu Perde Yıkama- Okul Danışmanlık- ADR'li taşıma kabı imalatı- Mekanik Tesisat- Çorlu Grafik Tasarım- Çorlu Sondaj- Çorlu Etüt- Futbol Cafe- Beylikdüzü Temizlik- Çorlu Kurs- Çorlu Ders- İzmit Mimar- Hurda Bakır Kablo- Hurda Bakır Kablo- Çorlu Pronet- Çorlu Yönetim- Çorlu Apartman Yönetimi- Çorlu Marangoz- Çorlu Avukat- Çorlu Su Arıtma- Çorlu Kompresör- İstanbul İnşaat-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden