makro yardım

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Katılım
24 Haziran 2019
Mesajlar
14
Excel Vers. ve Dili
excel
Merhabalar
Çok değerli cems arkadaşımız yardımcı oldu ama benim kendisine eksik bilgi vermemden dolayı makro eksik kaldı.. Çok üzgünüm uğraştırdım.

sayfa1 ve sayfa2 var.
Her iki sayfada da değerler var.

sayfa1 de A,B,C,D,........ sütunlarında değerler var
sayfa 2 deki hücrelerin hepsi boş
Sayfa 1 ve sayfa 2 de değerler 5. satırdan itibaren başlıyor. Üst satırlarda yazılar var.

makro 5. satırdan itibaren çalışmaya başlayacak.
sayfa1 deki B nin ilk değerini alıp sayfa2 de C1 hücresine yazacak
sayfa1 deki C nin ilk değerini alıp sayfa2 de C2 hücresine yazacak
sayfa1 deki D nin ilk değerini alıp sayfa2 de C3 hücresine yazacak

sayfa2 de ;
C1 ile C2 çarpılacak sonucu aynı sayfada B1 hücresine yazılacak.
C1 ile C2 toplanacak sonucu aynı sayfada C1 hücresine yazılacak.
C3 ile C2 toplanacak sonucu aynı sayfada D1 hücresine yazılacak.

Sonra sayfa2 deki ;
b1 hücresindeki değer sayfa1 deki e1 hücresine yazılacak
C1 hücresindeki değer sayfa1 deki F1 hücresine yazılacak
D1 hücresindeki değer sayfa1 deki G1 hücresine yazılacak

devamında
sayfa1 de bir alt satıra geçerek üstte yazdıklarımı tekrarlayacak.
Makro 5. satırdan itibaren çalıştığını söylemiştim.
Şimdi burada 6.satırda olacak. İşlem bitince 7. satır , 8.satır ,,, böyle devam edecek.

Taaaa ki sayfa 1 deki A sütunundaki değerlerin sonuna gelene kadar.

Burada dikkat edilmesi gereken en önemli husus sayfa 1 den değer alınan ve diğer sayfadan getirilen verilerin bir satır atlayarak işlem görmesidir.
En üstte yazdığım Sayfa 2 deki C1 , c2 , c3 hücreleri birer atlamayacak hep aynı yere kopyalanacak veriler.

Yani en üsttekini baz alırsak ;
Önce b5 i aldı sayfa 2 de C1 e yazdı
sonra c5 i aldı sayfa 2 de c2 ye yazdı
sonra d5 i aldı sayfa 2 de c3 e yazdı.

diğerleri b6,b7,b8 şeklinde giderken sayfa2 deki "C" ler hep sabit olacak

Sanırım anlatabildim :)

KPSS gibi oldu ama üstadlar için basit bir işlem ...

Teşekkürler
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
544
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Sub VeriIsleme()

Dim satirSayisi As Integer
satirSayisi = 5

Dim ws1 As Worksheet
Set ws1 = ThisWorkbook.Sheets("Sayfa1")

Dim ws2 As Worksheet
Set ws2 = ThisWorkbook.Sheets("Sayfa2")

Do Until ws1.Cells(satirSayisi, "A").Value = ""


Dim bDegeri As Variant
Dim cDegeri As Variant
Dim dDegeri As Variant

bDegeri = ws1.Cells(satirSayisi, "B").Value
cDegeri = ws1.Cells(satirSayisi, "C").Value
dDegeri = ws1.Cells(satirSayisi, "D").Value

ws2.Cells(1, "C").Value = bDegeri
ws2.Cells(2, "C").Value = cDegeri
ws2.Cells(3, "C").Value = dDegeri

ws2.Cells(1, "B").Value = ws2.Cells(1, "C").Value * ws2.Cells(2, "C").Value
ws2.Cells(1, "C").Value = ws2.Cells(1, "C").Value + ws2.Cells(2, "C").Value
ws2.Cells(1, "D").Value = ws2.Cells(3, "C").Value + ws2.Cells(2, "C").Value

ws1.Cells(satirSayisi, "E").Value = ws2.Cells(1, "B").Value
ws1.Cells(satirSayisi, "F").Value = ws2.Cells(1, "C").Value
ws1.Cells(satirSayisi, "G").Value = ws2.Cells(1, "D").Value

satirSayisi = satirSayisi + 1
Loop

End Sub

Bu makro, Sayfa1'deki 5. satırdan itibaren değerleri alır ve Sayfa2'deki sabit hücrelere (C1, C2, C3) yazar. Daha sonra Sayfa2'de belirli hesaplamaları yapar ve sonuçları tekrar Sayfa1'e yazar. Bu işlemleri Sayfa1'deki verilerin sonuna kadar tekrar eder.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,092
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu makro tam olarak ne işlem yapıyor?
 
Katılım
24 Haziran 2019
Mesajlar
14
Excel Vers. ve Dili
excel
Sub VeriIsleme()

Dim satirSayisi As Integer
satirSayisi = 5

Dim ws1 As Worksheet
Set ws1 = ThisWorkbook.Sheets("Sayfa1")

Dim ws2 As Worksheet
Set ws2 = ThisWorkbook.Sheets("Sayfa2")

Do Until ws1.Cells(satirSayisi, "A").Value = ""


Dim bDegeri As Variant
Dim cDegeri As Variant
Dim dDegeri As Variant

bDegeri = ws1.Cells(satirSayisi, "B").Value
cDegeri = ws1.Cells(satirSayisi, "C").Value
dDegeri = ws1.Cells(satirSayisi, "D").Value

ws2.Cells(1, "C").Value = bDegeri
ws2.Cells(2, "C").Value = cDegeri
ws2.Cells(3, "C").Value = dDegeri

ws2.Cells(1, "B").Value = ws2.Cells(1, "C").Value * ws2.Cells(2, "C").Value
ws2.Cells(1, "C").Value = ws2.Cells(1, "C").Value + ws2.Cells(2, "C").Value
ws2.Cells(1, "D").Value = ws2.Cells(3, "C").Value + ws2.Cells(2, "C").Value

ws1.Cells(satirSayisi, "E").Value = ws2.Cells(1, "B").Value
ws1.Cells(satirSayisi, "F").Value = ws2.Cells(1, "C").Value
ws1.Cells(satirSayisi, "G").Value = ws2.Cells(1, "D").Value

satirSayisi = satirSayisi + 1
Loop

End Sub

Bu makro, Sayfa1'deki 5. satırdan itibaren değerleri alır ve Sayfa2'deki sabit hücrelere (C1, C2, C3) yazar. Daha sonra Sayfa2'de belirli hesaplamaları yapar ve sonuçları tekrar Sayfa1'e yazar. Bu işlemleri Sayfa1'deki verilerin sonuna kadar tekrar eder.
Selam
İlginize çok teşekkür ederim. Makro çok güzel çalışıyor. Emeğinize sağlık..
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst